在 Java 中去除整数数组中重复元素有以下两种方法:使用 Set:将数组转换为 Set,去除重复元素再转换回数组。使用 Arrays.sort() 和双指针:先对数组排序,然后使用双指针扫描数组,跳过重复元素,将去重元素填入新数组。
Java 中去除整数数组中重复元素的方法
使用 Set
import java.util.Arrays;
import java.util.HashSet;
import java.util.Set;
class Solution {
public int[] removeDuplicates(int[] nums) {
Set set = new HashSet<>(Arrays.asList(nums));
return set.stream().mapToInt(i -> i).toArray();
}
} 使用 Arrays.sort() 和双指针
import java.util.Arrays;
class Solution {
public int[] removeDuplicates(int[] nums) {
if (nums.length == 0) {
return nums;
}
Arrays.sort(nums);
int i = 0, j = 1;
while (j < nums.length) {
if (nums[i] == nums[j]) {
j++;
} else {
nums[j++]
= nums[i++];
}
}
return Arrays.copyOfRange(nums, 0, j);
}
}