2.力扣c++刷题-->移除元素

题目:给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度。

不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并 原地 修改输入数组。

元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。

cpp 复制代码
class Solution {
public:
    int removeElement(vector<int>& nums, int val)
    {
        for (auto itr = nums.begin(); itr != nums.end();) 
        {
            if (*itr == val)
            {
                itr = nums.erase(itr); //从 vector nums 中删除一个元素,并返回指向下一个有效元素的迭代器
            }
            else
            {
                itr++;
            }
        }
        return nums.size();
    }
};
相关推荐
带多刺的玫瑰5 分钟前
Leecode刷题C语言之收集所有金币可获得的最大积分
算法·深度优先
LabVIEW开发11 分钟前
PID控制的优势与LabVIEW应用
算法·labview
涅槃寂雨36 分钟前
C语言小任务——寻找水仙花数
c语言·数据结构·算法
就爱学编程44 分钟前
从C语言看数据结构和算法:复杂度决定性能
c语言·数据结构·算法
涛ing44 分钟前
23. C语言 文件操作详解
java·linux·c语言·开发语言·c++·vscode·vim
半桔1 小时前
栈和队列(C语言)
c语言·开发语言·数据结构·c++·git
刀客1231 小时前
数据结构与算法再探(六)动态规划
算法·动态规划
阿猿收手吧!1 小时前
【Linux网络总结】字节序转换 收发信息 TCP握手挥手 多路转接
linux·服务器·网络·c++·tcp/ip
NOAHCHAN19871 小时前
怎么解决Visual Studio中两个cpp文件中相同函数名重定义问题
c++·visual studio
金融OG1 小时前
99.11 金融难点通俗解释:净资产收益率(ROE)VS投资资本回报率(ROIC)VS总资产收益率(ROA)
大数据·python·算法·机器学习·金融