参考:
https://blog.csdn.net/musechipin/article/details/85273856
题目描述:https://leetcode.com/problems/remove-duplicates-from-sorted-array/
class Solution{ public: int removeDuplicates(vector<int>& nums){ if(nums.size() == 0 || nums.size() == 1) return nums.size(); int i = 1; while(i<nums.size()){ if(nums[i] == nums[i-1]) nums.erase(nums.begin() + i); else i++; } return nums.size(); } }; //better solution :unique函数更快 /** * @brief unique()函数去掉的是相邻的重复数,只保留一个,使用前最好先排序, * unique()并没有把重复的元素删掉,只是把重复的元素放到最后了,因此配合 * erase()可以彻底删除元素; */ class Soluton{ public: int removeDuplicates(vector<int>& nums){ nums.erase(unique(nums.begin(),nums.end()),nums.end); return nums.size(); } };