数码资讯
1、删除排序数组中的重复项
选购提示
关注价格、性能、续航、售后和真实使用场景,理性比较后再下单。
给定数组 nums = [1,1,2], 函数应该返回新的长度 2, 并且原数组 nums 的前两个元素被修改为 1, 2。 你不需要考虑数组中超出新长度后面的元素。
public int removeDuplicates(int[] nums) {
if (nums.length == 0) return 0;
int pre = 0;
int suf = 1;
while(suf < nums.length){
if(nums[pre] != nums[suf]){
nums[pre + 1] = nums[suf];
pre++;
}
suf++;
}
return pre + 1;
}
解题思路:双指针解法。有点像插入排序,不过每次都插入到已排序部分的最后,时间复杂度O(n)
声明:本文内容用于数码产品信息整理与选购参考,具体价格、库存、售后政策以官方渠道和电商页面实时信息为准。