删除排序数组中的重复项

class Solution {
    public int removeDuplicates(int[] nums) {
    int cnt=0;
    int len=nums.length;
    for(int i=1;i<len;i++){
        if(nums[i]==nums[i-1]){
            for(int j=i+1;j<len;j++){
              int t=nums[j-1];
              nums[j-1]=nums[j];
              nums[j]=t;
            }
            len--;
            i=0;
        }
    }
    return len;
    }
}

官方题解:双指针(快慢指针)

public int removeDuplicates(int[] nums) {
    if (nums.length == 0) return 0;
    int i = 0;
    for (int j = 1; j < nums.length; j++) {
        if (nums[j] != nums[i]) {
            i++;
            nums[i] = nums[j];
        }
    }
    return i + 1;
}

不一样的烟火
原文地址:https://www.cnblogs.com/cstdio1/p/13297926.html