LeetCode : Remove Duplicates from Sorted Array

来源:互联网 发布:python爬虫下音乐 编辑:程序博客网 时间:2024/05/29 14:50

常规方法是使用双指针。

int removeDuplicates(vector<int>& nums){    if(nums.size() < 2)        return nums.size();    int left = 1;    while(left < nums.size())    {        if(nums[left] == nums[left - 1])            break;        left ++;    }    int right = left + 1;    while(right < nums.size())    {        if(nums[right] == nums[right - 1])            right ++;        else        {            nums[left] = nums[right];            left ++;            right ++;        }    }    return left;    }

只使用容器看起来比较简洁,但是效率会降低。

int removeDuplicates(vector<int>& nums) {    set<int> s(nums.begin(), nums.end());    nums.assign(s.begin(), s.end());    return s.size();}
0 0
原创粉丝点击