力扣刷题-80.删除有序数组中的重复项(2)

给你一个有序数组 nums ,请你 原地 删除重复出现的元素,使得出现次数超过两次的元素只出现两次 ,返回删除后数组的新长度。

不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。

class Solution {
public:
    int removeDuplicates(vector& nums) {
int counter=2;
if (nums.size()<2){
counter=nums.size();}
else{
for(int i=2;i

代码思路为,设置记录阈值2,从数组中当前元素遍历是否出现2个以上,将阈值以下的元素记录,超出删除。同时要注意测试用例中有单元素数组存在,因此不超过阈值2的数组直接输出即可,满足题目要求。

你可能感兴趣的:(C++练手,leetcode,算法,职场和发展)