您的位置:首页 > 编程语言 > Java开发

LeetCode | Remove Duplicates from Sorted Array II

2014-04-04 10:49 337 查看
题目

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]
.
分析
Remove Duplicates from Sorted Array基础上加上重复计数即可。

代码

public class RemoveDuplicatesFromSortedArrayII {
public int removeDuplicates(int[] A) {
if (A == null || A.length == 0) {
return 0;
}
int len = 1;
int count = 0;
for (int i = 1; i < A.length; ++i) {
if (A[i] != A[len - 1]) {
A[len++] = A[i];
count = 0;
} else if (count < 1) {
++count;
A[len++] = A[i];
}
}
return len;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  LeetCode java 去重