26. 删除排序数组中的重复项](https://leetcode-cn.com/problems/remove-duplicates-from-sorted-array/)

解题思路:

双指针法,快慢指针(j ,i),慢指针(i)指向第一个不重复项的值,快指针逐个往下遍历,当nums[i] != nums[j]时,则把nums[i] = nums[j], 且i++,j++;

当nums[i] == nums[j]时,只需要j ++。

代码如下:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
    	public static int removeDuplicates(int[] nums) {
            int i = 0;
        		for (int j = 1; j < nums.length; j++) {
            	if (nums[i] != nums[j]){
                i ++;
                nums[i] = nums[j];
            	}
        	}
       		 return i + 1;
      }

时间复杂度: O(N)

空间复杂度: O(1)