给定一个排序数组,在原数组中“删除”重复出现的数字,使得每个元素只出现一次,并且返回“新”数组的长度。
不要使用额外的数组空间,必须在不使用额外空间的条件下原地完成。
样例
样例 1:
输入: []
输出: 0
样例 2:
输入: [1,1,2]
输出: 2
解释: 数字只出现一次的数组为: [1,2]
输入测试数据 (每行一个参数)如何理解测试数据?
class Solution {
public:
/*
* @param nums: An ineger array
* @return: An integer
*/
int removeDuplicates(vector<int> &nums)
{
// write your code here
int size = nums.size();
if(size == 0)
return 0;
int cur = 1;
//sort(nums.begin(), nums.begin());
for(int i = 1; i < size; i++)
{
if(nums[i] == nums[cur-1])
continue;
else
{
nums[cur] = nums[i];
cur++;
}
}
return cur;
}
};