首页 > 其他 > 详细

【LeetCode】Remove Duplicates from Sorted Array

时间:2014-05-25 19:08:21      阅读:367      评论:0      收藏:0      [点我收藏+]

Remove Duplicates from Sorted Array

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].

 

两个指针,一个ind指向新数组的当前位置,一个iter遍历原数组,in-place实现。

由于是排好序的,如果A[iter]与A[ind]相同,则iter前进。否则A[iter]赋给A[ind],iter与ind都前进。

bubuko.com,布布扣
class Solution {
public:
    int removeDuplicates(int A[], int n) {
        if(n == 0)
            return 0;
        if(n == 1)
            return 1;

        int ind = 0;
        int iter = 1;

        for(; iter < n; iter ++)
        {
            if(A[iter] == A[ind])
                continue;
            else
                A[++ind] = A[iter];
        }

        return ind+1;
    }
};
bubuko.com,布布扣

bubuko.com,布布扣

【LeetCode】Remove Duplicates from Sorted Array,布布扣,bubuko.com

【LeetCode】Remove Duplicates from Sorted Array

原文:http://www.cnblogs.com/ganganloveu/p/3750598.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!