[leetcode]Remove Duplicates from Sorted Array

简单题。

public class Solution {
    public int removeDuplicates(int[] A) {
        // Start typing your Java solution below
        // DO NOT write main() function
        if (A.length == 0) return 0;
        int i = 0;
        int p = i + 1;
        while (p < A.length)
        {
        	if (A[i] == A[p]) {
        		p++;
        	}
        	else // A[i] !- A[p]
        	{
        		if ( p != i + 1) {
        			A[i+1] = A[p];
        		}
        		i++;
        		p++;
        	}
        }
        return (i+1);
    }
}

python3

class Solution:
    def removeDuplicates(self, nums: List[int]) -> int:
        i = j = 0
        prev = None
        while j < len(nums):
            if prev != nums[j]:
                nums[i] = nums[j]
                i += 1
                prev = nums[j]
            j += 1
        return i

  

posted @ 2013-07-31 12:21  阿牧遥  阅读(157)  评论(0编辑  收藏  举报