26. Remove Duplicates from Sorted Array

Given a sorted arraynums, remove the duplicates in-place such that each element appear only _once _and return the new length.

Do not allocate extra space for another array, you must do this by modifying the input array in-place with O(1) extra memory.

Example 1:

Given 
nums = [1,1,2],

Your function should return length = 2, with the first two elements of 
nums being 1 and 2 respectively.

It doesn't matter what you leave beyond the returned length.

Example 2:

Given nums = [0,0,1,1,1,2,2,3,3,4],

Your function should return length = 5, with the first five elements of nums being modified to 0, 1, 2, 3, and  respectively.

It doesn't matter what values are set beyond the returned length.
class Solution {
    public int removeDuplicates(int[] nums) {
        if(nums == null || nums.length == 0) return 0;

        int slow = 0 , fast = 0, len =1;
        while(fast < nums.length){
            if(nums[slow] == nums[fast]) fast++;
            else{
                nums[++slow] = nums[fast++];
                len++;
            }
        }

       return len; 
    }
}

results matching ""

    No results matching ""