lintcode-删除排序数组中的重复数字II-101
2015-09-21 00:18
330 查看
跟进“删除重复数字”:
如果可以允许出现两次重复将如何处理?
样例 给出数组A =[1,1,1,2,2,3],你的函数应该返回长度5,此时A=[1,1,2,2,3]。
如果可以允许出现两次重复将如何处理?
样例 给出数组A =[1,1,1,2,2,3],你的函数应该返回长度5,此时A=[1,1,2,2,3]。
class Solution { public: int removeDuplicates(vector<int> &nums) { if(nums.empty()) return 0; map<int,int> check; int fast=0,slow=0; while(fast<nums.size()){ if(check[nums[fast]]!=2){ ++check[nums[fast]]; if(slow!=fast) nums[slow]=nums[fast]; ++slow; } ++fast; } while(slow++<fast) nums.pop_back(); return nums.size(); } };
相关文章推荐
- leetcode:Combination Sum III
- 20150921gdb调试.md
- test
- 读书笔记:《知道做到》
- 读书笔记:《写给大家看的设计书》
- uboot中bootargs实现
- 浅谈HTTP中Get与Post的区别
- 读书笔记:《少的力量》
- 读书笔记:《搞定3--平衡工作和生活的艺术》
- sql之left join、right join、inner join的区别
- 第9周工作周报
- 读书笔记:《少的力量》
- 读书笔记:《搞定3--平衡工作和生活的艺术》
- Objective-C中的屏幕截图
- 读书笔记:《冠军记忆术》
- 关于自定义ViewGroup
- [OK3354D--System]Android4.2系统安装
- 第1、2章 分词、词干提取
- 读书笔记:《冠军记忆术》
- uboot中env实现