LeetCode | 80. Remove Duplicates from Sorted Array II
来源:互联网 发布:淘宝团队管理制度 编辑:程序博客网 时间:2024/05/16 12:45
Follow up for “Remove Duplicates”:
What if duplicates are allowed at most twice?
For example,Given sorted array nums = [1,1,1,2,2,3],Your function should return length = 5, with the first five elements of nums being 1, 1, 2, 2 and 3. It doesn't matter what you leave beyond the new length.
Solution
删除冗余元素,每种数字最多出现两次。考虑使用vector自带的erase( )函数,用两个指针 it 和 it2来记录当前访问的位置,用 Count记录当前种类数字出现的次数,超过两次就把它删了,最后返回 nums数组的长度。
Code
// 13 ms#include <iostream>#include <vector>using namespace std;int removeDuplicates(vector<int>& nums){ int Count = 0; //用于记录当前种类数字数量 vector<int>::iterator it = nums.begin(); vector<int>::iterator it2 = nums.begin(); it++; //从第二个开始 while(it != nums.end()) { if(*it == *it2) { Count++; if(Count == 2) { nums.erase(it); it = it2; it++; Count--; } else { it++; it2++; } } else { Count = 0; it++; it2++; } } return nums.size();}int main(){ vector<int> Input; int k; while(cin>>k) { Input.clear(); for(int i=0;i<k;i++) { int t; cin>>t; Input.push_back(t); } int res = removeDuplicates(Input); for(int i=0;i<res;i++) cout<<Input[i]; cout<<endl; } return 0;}
阅读全文
1 0
- leetcode——26. Remove Duplicates from Sorted Array && 80. Remove Duplicates from Sorted Array II
- LeetCode 26. Remove Duplicates from Sorted Array && 80. Remove Duplicates from Sorted Array II
- leetcode.array--80. Remove Duplicates from Sorted Array II
- LeetCode: Remove Duplicates from Sorted Array II
- [Leetcode] Remove Duplicates from Sorted Array II
- LeetCode: Remove Duplicates from Sorted Array II
- [Leetcode] Remove Duplicates from Sorted Array II
- [LeetCode] Remove Duplicates from Sorted Array II
- [leetcode] Remove Duplicates from Sorted Array II
- [LeetCode]Remove Duplicates from Sorted Array II
- [leetcode]Remove Duplicates from Sorted Array II
- LeetCode-Remove Duplicates from Sorted Array II
- [leetcode] Remove Duplicates from Sorted Array II
- LeetCode - Remove Duplicates from Sorted Array II
- LeetCode:Remove Duplicates from Sorted Array II
- LeetCode | Remove Duplicates from Sorted Array II
- Leetcode: Remove Duplicates from Sorted Array II
- 【leetcode】Remove Duplicates from Sorted Array II
- Springboot系列:Springboot与Thymeleaf模板引擎整合基础教程(附源码)
- c#从控制台输入问题
- request response session
- Ajax的ajax()和post()的使用
- 最大子串和问题
- LeetCode | 80. Remove Duplicates from Sorted Array II
- C++ STL-Vector动态数组
- (剑指offer)旋转数组的最小数字
- #正念奇迹#ZQ0003《搞定:无压工作的艺术》
- java基础知识(数组)
- 布局优化
- matlab+opencv+VS动态编译出错:
- SpringCloud 整合 Quartz 支持集群,支持动态修改 Quartz 执行时间
- HDU