题解 | #草原牛群集合# java
草原牛群集合
https://www.nowcoder.com/practice/6fc74519ff9c44288dbcec5db7345ded
import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param nums int整型一维数组 * @param val int整型 * @return int整型 */ public int remove_cows (int[] nums, int val) { // write code here int i = 0; // 指向当前要处理的元素 int j = 0; // 指向下一个要放置元素的位置 int n = nums.length; for (int k = 0; k < n; k++) { if (nums[k] != val) { nums[j] = nums[k]; j++; } } return j; } }
编程语言是Java
该题考察的知识点是数组的遍历和元素移除。
代码的文字解释:remove_cows
接收一个 nums
和一个整数 val
作为输入参数。函数的目标是从nums
中移除所有等于val
的元素,并返回处理后的vector长度。
代码中使用两个指针i
和j
来遍历nums
,其中i
指向当前要处理的元素,j
指向下一个要放置元素的位置。通过遍历nums
,当发现元素不等于val
时,将该元素移动到j
位置,并将j
递增,以便处理下一个元素。最后返回j
,即为处理后的长度。这样就实现了移除所有等于val
的元素。