【面试经典150题】删除有序数组中的重复项

在这里插入图片描述

一.删除有序数组中的重复项

在这里插入图片描述

题目如上图所示,这里非严格递增排序的定义是数字序列,其中相邻的数字可以相等,并且数字之间的差值为1
这题我们依旧使用迭代器进行遍历,比较当前的数据是否与下一个数据相同,如若相同则删除下一个数据。唯一需要注意的是遍历的结束条件:如果it走到了最后一个数据则结束

#include<iostream>
#include<vector>

using namespace std;

class Solution {
public:
    int removeDuplicates(vector<int>& nums) {
        auto it = nums.begin();
        while(it!=nums.end()&&(it+1)!=nums.end())
        {
            if(*it==*(it+1))
            {
                nums.erase(it+1);
            }
            else
            {
                it++;
            }
        }
        return nums.size();
    }
};

相关推荐

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-06-05 23:40:02       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-06-05 23:40:02       106 阅读
  3. 在Django里面运行非项目文件

    2024-06-05 23:40:02       87 阅读
  4. Python语言-面向对象

    2024-06-05 23:40:02       96 阅读

热门阅读

  1. 【MySQL】——数据库设计概述与需求分析

    2024-06-05 23:40:02       31 阅读
  2. 全面而实用的敬酒词大全指南

    2024-06-05 23:40:02       23 阅读
  3. 1初识C#

    2024-06-05 23:40:02       25 阅读
  4. C++ Qt:QString与数字之间的相互转换

    2024-06-05 23:40:02       29 阅读
  5. #!/usr/bin/env bash

    2024-06-05 23:40:02       22 阅读