您的位置:首页 > 其它

Remove Duplicates from Sorted Array II - LeetCode

2014-02-25 15:37 471 查看
Follow up for "Remove Duplicates":

What if duplicates are allowed at most twice?

For example,

Given sorted array A = 
[1,1,1,2,2,3]
,

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

下面是一个不需要用Hash的简单作法,重点是要在原数据集上修改:

public class Solution {
public int removeDuplicates(int[] A) {
if (A == null || A.length == 0) {
return 0;
}

int size = 0;
for (int i = 1; i < A.length; i++) {
if (A[i] == A[size] && size > 0 && A[size-1] == A[size]) {
continue;
}
A[++size] = A[i];
}
return size + 1;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  leetcode