题解 | #草原牛群集合# 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 len = nums.length; int idx = 0; for (int i = 0; i < len; i++) { if (nums[i] != val) { nums[idx++] = nums[i]; } } return idx; } }
这段代码使用的是Java。
题目考察的知识点是数组的遍历和修改。
代码的文字解释如下:
- 定义了一个
remove_cows
的函数,该函数接受一个整数类型的向量nums
和一个整数val
作为参数,并返回一个整数类型的值。 - 在函数内部,通过
nums.size()
获取向量的长度,并将其保存在len
变量中。 - 然后,
idx
,用于记录不等于val
的元素应该存放的位置。 - 使用
for
循环遍历向量nums
中的每个元素。如果当前元素不等于val
,则将其放在新位置idx
上,并递增idx