删除排序数组中的重复项

62 阅读1分钟
// 删除排序数组中的重复项  
// 输入:nums = [1,1,1,2,2,3]  
// 输出:5, nums = [1,1,2,2,3]  
// 解释:函数应返回新长度 length = 5, 并且原数组的前五个元素被修改为 1, 1, 2, 2, 3。  
// 不需要考虑数组中超出新长度后面的元素。  
public static int removeDuplicates(int[] nums){  
    int n=nums.length;  
    if(n<=2){  
        return n;  
    }  
    int slow=2,fast=2;  
    while (fast<n){  
       if(nums[slow-2]!=nums[fast]){  
        nums[slow]=nums[fast];  
        ++slow;  
       }  
       ++fast;  
    }  
    return slow;  
}