2021-01-01

qq_42445645發表於2021-01-01

刪除有序陣列中的重複元素
給定一個排序陣列,你需要在 原地 刪除重複出現的元素,使得每個元素只出現一次,返回移除後陣列的新長度。

不要使用額外的陣列空間,你必須在 原地 修改輸入陣列 並在使用 O(1) 額外空間的條件下完成。
因為是在有序陣列中,可以依次遍歷,把不重複的值依次排放。最終返回。
class Solution {
public int removeDuplicates(int[] nums) {
int len=nums.length;
if(len==0){
return 0;
}
int i=0;
for(int j=1;j<len;j++){
if(nums[i]!=nums[j]){
i++;
nums[i]=nums[j];
}
}
return i+1;
}
}

相關文章