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

LeetCode:26. 删除有序数组中的重复项

简介

题目链接:https://leetcode.cn/problems/remove-duplicates-from-sorted-array/description/

解决方式:数组 + 双指针

这是作者学习众多大神的思路进行解题的步骤,很推荐大家解题的时候去看看题解里面大佬们的思路、想法!

推荐查看Max大佬所作题解。

双指针

解题思路:双指针,一个指针 p 作为数组前面的唯一数字序列的最后一位,一个指针 q 迭代整个数组寻找与最后一位不同的数字,找到了就将其放在最后一位的下一位,然后 p、q 指针都下移,没找到则 q 指针下移继续寻找,直到迭代完整个数组。

classSolution{publicintremoveDuplicates(int[]nums){// 边界处理if(nums.length==0||nums==null){return0;}// 双指针// p相当于是目标唯一数字序列的最后一位,而q则用来迭代数组剩余元素intp=0;intq=1;while(q<nums.length){if(nums[p]!=nums[q]){// 不相等,找到有序不严格递增数组的唯一元素,设置在唯一数字序列中nums[p+1]=nums[q];// 唯一数字序列最后一位更迭p++;}// 相等,q前进寻找不等元素q++;}// 返回结果returnp+1;}}

双指针优化

初始数组可能每一个元素都唯一,所以可以避免自己覆盖自己。

classSolution{publicintremoveDuplicates(int[]nums){// 边界处理if(nums.length==0||nums==null){return0;}// 双指针// p相当于是目标唯一数字序列的最后一位,而q则用来迭代数组剩余元素intp=0;intq=1;while(q<nums.length){if(nums[p]!=nums[q]){// 优化,防止数组中的所有元素本来就唯一if(q-p>1){// 不相等,找到有序不严格递增数组的唯一元素,设置在唯一数字序列中nums[p+1]=nums[q];}// 唯一数字序列最后一位更迭p++;}// 相等,q前进寻找不等元素q++;}// 返回结果returnp+1;}}
http://www.jsqmd.com/news/473459/

相关文章:

  • JavaScript中国象棋AI实战:模块化决策引擎与可视化分析
  • 单端正激变换器磁复位机制解析与CCM模式关键参数优化
  • Qwen3-ASR-1.7B安全部署:HTTPS加密传输方案
  • 基于智优达平台的Python教学实践:从环境搭建到自动评测
  • 跨平台开发实战:VSCode与VS2022远程连接OpenEuler Linux的完整指南
  • DeepAnalyze惊艳案例:DeepAnalyze从200页PDF财报中自动提取管理层讨论核心结论与隐含风险
  • 快速上手Kook Zimage真实幻想Turbo:5个实用技巧提升你的AI绘画效率
  • 银河麒麟V10:修复sudo权限错误的两种实用方法
  • 灵感画廊惊艳生成:SDXL 1.0在低光照场景下对‘烛光’‘月色’等微光质感的刻画
  • 告别手动转换:Labelme JSON批量转数据集脚本的实战优化与避坑指南
  • N_m3u8DL-CLI-SimpleG:高效M3U8视频下载工具全攻略
  • SMUDebugTool:面向硬件开发者的底层调试与性能优化解决方案
  • 如何突破流媒体下载瓶颈?N_m3u8DL-CLI-SimpleG的创新实践
  • Python爬虫实战:破解千图网VIP高清无水印图片下载限制
  • tao-8k Embedding模型部署指南:NVIDIA驱动/Xinference版本兼容性避坑清单
  • Redis的哨兵机制
  • N_m3u8DL-CLI-SimpleG:图形化M3U8下载工具全攻略
  • 9. GD32VW553外部中断实战:PA0按键触发LED翻转详解
  • 衡山派开发板看门狗(WDT)驱动测试指南:从复位到喂狗的完整功能验证
  • 基于ZCU104的Petalinux定制:从XSA到启动镜像的完整构建流程
  • 【ADC延迟剖析】从数字滤波器到系统响应:SAR与ΔΣ ADC的延迟本质与应用抉择
  • 深入剖析Antd Table固定列布局:从空白间隙到完美适配
  • WinCC 条形图详细使用说明
  • LaTeX技巧:高效绘制带自定义符号的学术统计表格
  • 从拉格朗日插值到门限秘密:Shamir方案核心原理解析
  • 基于GD32E230的雨滴传感器模块驱动移植与ADC/GPIO双模式数据采集实战
  • 你知道普通产品经理和AI产品经理有什么区别吗?
  • HY-MT1.5实时翻译场景测试:边缘设备上的低延迟表现
  • 2026最新野草助手下载安装教程(附官网安装包+图文详解) - xiema
  • 51单片机实战:IIC协议驱动24C02实现LED动态控制