首页 > 代码库 > leetcode-Remove Duplicates from Sorted Array II-80
leetcode-Remove Duplicates from Sorted Array II-80
输入非递减数组,要求每个元素最多重复两次,求最后剩下的数组和元素个数
这题函数的返回值是元素个数,但是还需要把输入的参数也就是输入的数组也改动成合法的
因为是有序的序列,所以直接遍历一遍,用cur保存元素,cnt保存这个元素出现的次数就好,ON
1 class Solution { 2 public: 3 int removeDuplicates(vector<int>& nums) { 4 int ans=0; 5 if(nums.size()==0) return ans; 6 int cur=nums[0]; 7 int cnt=1; 8 ans=1; 9 for(int i=1;i<nums.size();i++){10 if(nums[i]==cur){11 cnt++;12 if(cnt<=2) nums[ans++]=nums[i];13 }14 else{15 cur=nums[i];16 cnt=1;17 nums[ans++]=nums[i];18 }19 }20 return ans;21 } 22 };
leetcode-Remove Duplicates from Sorted Array II-80
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。