#include <iostream>
#include <vector>
using namespace std;
//class Solution {
//public:
// int removeDuplicates(vector<int>& nums) {
// if (nums.size() == 0) {
// return 0;
// }
// int search = 0, last = 0, max = int(nums.size());
// while (last < max - 1 && search < max - 1) {
// search++;
// if (nums[search] > nums[last]) {
// last++;
// nums[last] = nums[search];
// }
// }
// return last + 1;
// }
//};
class Solution {
public:
int removeDuplicates(vector<int>& nums) {
if (nums.size() < 2) {
return nums.size();
}
int search = 1, last = 1, max = int(nums.size());
while (last < max - 1 && search < max - 1) {
search++;
if (nums[search] > nums[last - 1]) {
last++;
nums[last] = nums[search];
}
}
return last + 1;
}
};
int main(int argc, const char * argv[]) {
int n[2] = {1, 1};
//int n[12] = {1, 1, 1, 1, 2, 2, 3, 4, 4, 4, 5, 6};
vector<int> nu(n, n + sizeof(n) / sizeof(int));
Solution s;
int res = s.removeDuplicates(nu);
cout << res << endl;
return 0;
}
leetcode-26-Remove Duplicates from Sorted Array
最新推荐文章于 2020-11-28 21:12:49 发布