标签:
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]
.
[Solution]
1 int removeDuplicates(int A[], int n) 2 { 3 int slow = 0, fast = 0; 4 int count = 1; 5 6 for (fast = 0; fast < n; fast++) 7 { 8 if (fast > 0 && A[fast] == A[fast - 1]) 9 count++; 10 else 11 count = 1; 12 if (count > 2) 13 continue; 14 A[slow++] = A[fast]; 15 } 16 17 return slow; 18 }
leetcode 80. Remove Duplicates from Sorted Array II
标签:
原文地址:http://www.cnblogs.com/ym65536/p/4297524.html