当前位置: 首页 > article >正文

Leetcode—移除元素

移除元素

    题目描述

     

 思路

      思路:定义两个指针变量指向数组第一个位置,判断nums[scr]是否等于val

                 case1:相等,scr++;

                 case2:不相等,nums[dst]=nums[scr],scr++,dst++;

        时间复杂度:O(n);空间复杂度:O(1);

画图解释

1.定义两个指针变量指向数组第一个位置

2.判断nums[scr]是否等于val

      相等,scr++

 不相等,nums[dst]=nums[scr],scr++,dst++;

    此时,src跳出了循环,dst指向的是数组下标为2的位置,而我们当前要返回数组的有效数据个数是2,那我们直接返回dst就好了。注意,我们的结束条件是src要小于我们的数组长度。

完整代码

int removeElement(int* nums, int numsSize, int val) 
{
    int str=0,dst=0;
    while(str<numsSize)
    {
        if(nums[str]==val)
        {
            str++;
        }
        else
        {
            nums[dst]=nums[str];
              str++;
              dst++;
        }
    }
    //此时dst指向的位置就是要返回的个数
    return dst;

}


http://www.kler.cn/news/313987.html

相关文章:

  • 海外问卷调查:选择静态IP还是动态IP?
  • Python数据分析案例59——基于图神经网络的反欺诈交易检测(GCN,GAT,GIN)
  • Redis中Hash(哈希)类型的基本操作
  • 「已解决」KeyError: ‘getpwuid(): uid not found: 1004‘
  • 编写函数,对字符数组中的字母由大到小的字母顺序进行排序
  • Jira Cloud涨价5%-20%,钉钉项目Teambition成优选替代
  • 使用Microsoft Visual Studio Installer Projects 2022打包桌面程序
  • 【大数据】MapReduce的“内存增强版”——Spark
  • 基于对数变换的图像美白增强,Matlab实现
  • Docker 数据目录迁移:一篇详细的技术指南
  • 软件测试 BUG 篇
  • java初学者:一个经典又全新改造的游戏——打地鼠
  • 别用 npm config set registry 设置淘宝镜像了!!!
  • 2025年最新大数据毕业设计选题-基于Hive分析相关
  • 【超星word下载】使用脚本下载的超星 word 文件,显示 Word 发现无法读取的内容
  • 集成学习详细介绍
  • react hooks--useLayoutEffect
  • oracle 11g SYSAUX表空间清理
  • 微服务——网关登录校验(一)
  • ODrive电机驱动算法VScode环境配置笔记教程
  • Java | Leetcode Java题解之第412题Fizz Buzz
  • Apache doris手动部署时报错“Please disable swap memory before installation.“
  • Web 服务器介绍 | 通过 Tomcat 说明其作用
  • 华为摄像机/NVR主动注册协议接入SVMSP平台
  • pytorch入门(2)——TensorBoard的使用
  • Python利用PyInstaller封装EXE文件
  • 2024“华为杯”中国研究生数学建模竞赛(E题)深度剖析_数学建模完整过程+详细思路+代码全解析
  • Mysql实战
  • RNN的反向传播
  • 经典sql题(九)SQL 查询详细指南总结二