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

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

题目链接:

26. 删除有序数组中的重复项 - 力扣(LeetCode)

思路分析:同样是双指针问题,和之前的27题很像(LeetCode27.移除元素-CSDN博客,大家可以参考这个),这道题目的升级之处在于我们需要妥善处理好重复出现的元素的关系,所以引入了快慢指针,快指针负责全局遍历,慢指针来删除不需要的元素。

算法分析:在思路里面已经讲了一部分,就是设置快慢指针,然后快指针负责全局移动(要遍历一遍数组),慢指针负责进行处理,每当移动到快指针发现相邻两个元素不相等时,就需要慢指针进行特判。

参考代码:

class Solution {
public:int removeDuplicates(vector<int>& nums) {int n=nums.size();//数组的长度if(n==1)//进行一个特判 方便后面用快慢指针return 1;int slow=1,fast=1;//快慢指针开始都初始化为1while(fast<n){//快指针没有遍历完if(nums[fast]!=nums[fast-1]){//如果相邻两个元素不相等nums[slow]=nums[fast];//把变换的元素的值赋值给慢指针slow++;//慢指针向后移动}++fast;//快指针每一轮都要移动}return slow;//慢指针代表了不同元素的个数}
};

相关文章:

  • win10/win11 优先调用大核的电源计划性能设置
  • 在vue中实现下载文件功能
  • VUE3-form表单保存附件与基本信息
  • 【C++初阶】—— 类和对象 (上)
  • 深入了解Redis的过期策略和内存淘汰机制
  • 5月27日
  • Spring Boot中如何实现定时任务?
  • el-select 组件获取整个对象
  • 模型实战(20)之 yolov8分类模型训练自己的数据集
  • yolov8+ROS+ubuntu18.04——学习记录
  • Redis篇 String
  • .Net Core 中间件与过滤器
  • 02 FreeRTOS 任务
  • PyCharm面板ctrl+鼠标滚轮放大缩小代码
  • 基于Pytorch框架的深度学习ShufflenetV2神经网络十七种猴子动物识别分类系统源码
  • Android路由框架AnnoRouter:使用Java接口来定义路由跳转
  • httpie使用详解
  • JS笔记四:作用域、变量(函数)提升
  • js写一个简单的选项卡
  • underscore源码剖析之整体架构
  • Vue UI框架库开发介绍
  • windows下mongoDB的环境配置
  • 阿里云ubuntu14.04 Nginx反向代理Nodejs
  • 开年巨制!千人千面回放技术让你“看到”Flutter用户侧问题
  • 开源SQL-on-Hadoop系统一览
  • 前端设计模式
  • 三分钟教你同步 Visual Studio Code 设置
  • 实习面试笔记
  • 微信小程序设置上一页数据
  • 一个JAVA程序员成长之路分享
  • 源码之下无秘密 ── 做最好的 Netty 源码分析教程
  • Oracle Portal 11g Diagnostics using Remote Diagnostic Agent (RDA) [ID 1059805.
  • 带你开发类似Pokemon Go的AR游戏
  • 智能情侣枕Pillow Talk,倾听彼此的心跳
  • ​DB-Engines 12月数据库排名: PostgreSQL有望获得「2020年度数据库」荣誉?
  • ​MySQL主从复制一致性检测
  • ​ubuntu下安装kvm虚拟机
  • ​学习一下,什么是预包装食品?​
  • ​一文看懂数据清洗:缺失值、异常值和重复值的处理
  • ![CDATA[ ]] 是什么东东
  • # dbt source dbt source freshness命令详解
  • (11)iptables-仅开放指定ip访问指定端口
  • (done) 声音信号处理基础知识(2) (重点知识:pitch)(Sound Waveforms)
  • (pojstep1.1.1)poj 1298(直叙式模拟)
  • (PySpark)RDD实验实战——取最大数出现的次数
  • (undone) MIT6.824 Lecture1 笔记
  • (二)十分简易快速 自己训练样本 opencv级联lbp分类器 车牌识别
  • (附源码)python房屋租赁管理系统 毕业设计 745613
  • (十二)python网络爬虫(理论+实战)——实战:使用BeautfulSoup解析baidu热搜新闻数据
  • .equals()到底是什么意思?
  • .Net 6.0 Windows平台如何判断当前电脑是否联网
  • .NET开源项目介绍及资源推荐:数据持久层 (微软MVP写作)
  • .Net中wcf服务生成及调用
  • .NET中两种OCR方式对比
  • [17]JAVAEE-HTTP协议