0
点赞
收藏
分享

微信扫一扫

2.1.1删除有序数组中的重复项


文章目录

  • ​​1.题目要求​​
  • ​​2.代码​​

1.题目要求

  • 2.1.1 Remove Duplicates from Sorted Array
  • ​​26.删除有序数组中的重复项​​

2.代码

// 思路:把不重复的元素移到前面来
//时间复杂度O(n),空间复杂度O(1)
class solution
{
public:
int removeDuplicates(vector<int>& nums)
{
if (nums.empty() == 0)
{
return 0;
}

int result = 0;
for (int i = 1; i < nums.size(); ++i)
{
if (nums[result] != nums[i])
{
++result;
nums[result] = nums[i];
}
}

retuen result+1;
}
};

//时间复杂度O(1),空间复杂度O(1)
//http://c.biancheng.net/view/7372.html

//http://www.cplusplus.com/reference/algorithm/unique/
class solution
{
public:
int removeDuplicates(vector<int>& nums)
{
vector<int>::iterator it1 = unique(nums.begin(), nums.end());
return distance(nums.begin(), it1);
}

};


举报

相关推荐

0 条评论