LeetCode (Remove Duplicates from Sorted Array II)

来源:互联网 发布:平面设计好还是美工好 编辑:程序博客网 时间:2024/06/15 04:34

Problem:

Follow up for "Remove Duplicates":
What if duplicates are allowed at most twice?

For example,
Given sorted array nums = [1,1,1,2,2,3],

Your function should return length = 5, with the first five elements of nums being 1122 and 3. It doesn't matter what you leave beyond the new length.

Solution:

class Solution {public:    int removeDuplicates(vector<int>& nums) {        int n = 1, i = 1;        while(i < nums.size()){            if(nums[i] == nums[i - 1]){                n++;                if(n > 2){                    nums.erase(nums.begin() + i);                    n--;                }else i++;            }else{                n = 1;                i++;            }        }        return nums.size();    }};


原创粉丝点击