首页 > 代码库 > [LeetCode] Remove Duplicates from Sorted Array [19]

[LeetCode] Remove Duplicates from Sorted Array [19]

题目

Given a sorted array, 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 in place with constant memory.

For example,
Given input array A = [1,1,2],

Your function should return length = 2, and A is now [1,2].

原题链接(点我)

解题思路

移除数组中的重复元素,并返回新数组的长度。
这个题目应该算是简单的题目。使用两个变量就可以。具体的看代码

代码实现

class Solution {
public:
    int removeDuplicates(int A[], int n) {
        if(A==NULL || n<=0) return 0;
        int start = 1;
        int back = A[0];
        for(int i=1;i<n;++i){
            if(A[i] != back){
                A[start++] = A[i];
                back = A[i];
            }
        }
        return start;
    }
};

如果你觉得本篇对你有收获,请帮顶。
另外,我开通了微信公众号--分享技术之美,我会不定期的分享一些我学习的东西.
你可以搜索公众号:swalge 或者扫描下方二维码关注我

(转载文章请注明出处: http://blog.csdn.net/swagle/article/details/29211429 )