import java.util.*;
public class Solution {
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param nums int整型一维数组
* @return int整型
*/
public int remove_duplicates (int[] nums) {
// write code here
int numsLen = nums.length;
if (numsLen == 0) {
return 0;
}
int cnt = 1;
for (int i = 0; i < numsLen - 1; i++) {
if (nums[i] != nums[i + 1]) {
nums[cnt] = nums[i + 1];
cnt++;
}
}
return cnt;
}
}
这段代码使用的是Java编程语言。
题目考察的知识点是数组操作和遍历。
代码的文字解释如下:
- 定义了一个名为
remove_duplicates的函数,该函数接受一个名为nums的整数型一维数组作为参数,还有一个整数numsLen表示数组的长度,并返回一个整数类型的值。 - 在函数内部,首先检查数组的长度是否为0,如果是,则直接返回0。
- 定义一个变量
cnt并初始化为1,用于记录不重复元素的个数。 - 使用
for循环遍历数组元素,从第一个元素开始,判断当前元素与下一个元素是否相等。如果不相等,则将下一个元素放在cnt位置上,并递增cnt。 - 返回
cnt的值,即新数组中不重复元素的个数。

京公网安备 11010502036488号