java移除数组中的重复项只保留一个
你可以使用一个额外的数组来存储不重复的元素,然后将这个数组复制回原始数组。
以下是一个示例代码:
public static int removeDuplicates(int[] nums) {
if (nums.length == 0) {
return 0;
}
int index = 0;
for (int i = 1; i < nums.length; i++) {
if (nums[i] != nums[index]) {
index++;
nums[index] = nums[i];
}
}
return index + 1;
}
这段代码使用了双指针的方法,其中一个指针(index)指向当前不重复元素应该存储的位置,另一个指针(i)依次遍历整个数组。当遇到一个不重复的元素时,将其复制到index位置,并将index加1。最后返回index + 1即为不重复元素的个数。
你可以通过调用这个方法来移除数组中的重复项,只保留一个。例如:
int[] nums = {1, 1, 2, 2, 3, 4, 5, 5};
int length = removeDuplicates(nums);
for (int i = 0; i < length; i++) {
System.out.print(nums[i] + " ");
}
输出结果为:1 2 3 4 5
原文地址: https://www.cveoy.top/t/topic/iL7J 著作权归作者所有。请勿转载和采集!