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

面试经典(4/150)删除有序数组中的重复项 II

面试经典(4/150)删除有序数组中的重复项 II

给你一个有序数组 nums ,请你 原地 删除重复出现的元素,使得出现次数超过两次的元素只出现两次 ,
返回删除后数组的新长度。不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。

解题思路:与第三个题相比,现在元素最多可重复两次,所以快指针从第3个元素开始,慢指针从第2个元素开始,若第三个与前两个相同,则跳出循环

class Solution:def removeDuplicates(self, nums: List[int]) -> int:#由于元素可以重复2次,left现在从第二个元素开始,right从第三个元素开始left = 1for right in range(2,len(nums)):#和前两位元素相比if nums[right] == nums[left] ==nums [left-1]:continueleft +=1nums[left] = nums[right]return left+1

参考链接:https://leetcode.cn/problems/remove-duplicates-from-sorted-array-ii/?envType=study-plan-v2&envId=top-interview-150

http://www.lryc.cn/news/231888.html

相关文章:

  • 使用WildCard充值ChatGPT Plus 会员
  • element-plus使用el-date-picker组件时,如何禁止用户选择当前时间之后的日时分秒
  • keepalived安装配置(服务器主备、负载均衡)
  • 盘点一款制作电子杂志的网站,小白也能快速上手
  • 全域全自主建设,亚信科技AntDB数据库助力广电5G业务上线运行
  • 使用 SSH 密钥进行身份验证
  • 国内最受欢迎的电商API接口调用京东商品详情数据
  • windows远程桌面登录ubuntu,黑屏闪退,
  • 12-使用vue2实现todolist待办事项
  • 微信小程序授权登录?
  • React 18 + Hooks +Ts 开发中遇到的问题及解决方案!
  • 推荐一个非常好用的uniapp的组件库【TMUI3.0】
  • LeetCode(19)最后一个单词的长度【数组/字符串】【简单】
  • 使用Docker本地安装部署Drawio绘图工具并实现公网访问
  • IDEA导入jar包
  • 使用flutter的Scaffold脚手架开发一个最简单的带tabbar的app模板
  • aws服务器配置密码登陆
  • 【命令行魔法:掌握Linux基础工具开发的独门技艺】
  • 虚拟DOM的原理和理解
  • C# WPF Threads 和 Dispatchers 有什么区别
  • 【文末送书——数学经典著作】工科必备的数学思维培养
  • 【云备份项目两万字总结】服务端篇 -----附源码
  • 蓝眼开源云盘部署全过程(手动安装)
  • aliyun Rest ful api V3版本身份验证构造
  • windows10上使用Visual Studio对树莓派进行交叉编译示例
  • flutter开发web应用支持浏览器跨域设置
  • C#调用C++动态库接口函数和回调函数方法
  • 3D造型渲染软件DAZ Studio mac中文版介绍
  • 破解tomcat密码并上传webshell
  • Java 8 Stream 的使用场景