算法-80. 删除有序数组中的重复项 II-⭐⭐

news2024/9/22 11:38:01

给你一个有序数组 nums ,请你 原地 删除重复出现的元素,使得出现次数超过两次的元素只出现两次 ,返回删除后数组的新长度。

不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。

提示:

  • 1 <= nums.length <= 3 * 104
  • -104 <= nums[i] <= 104
  • nums 已按升序排列

解析思路:这道题妙就妙在了一个地方,就是slow-2这个操作上,首先啊,我们肯定是要判断这个数组长度是否大于2,不大于2,直接返回长度即可,然后还是快慢指针,快指针在前,满指针灾后,但是判断的是nums[slow-2]和nums[fast]的值,如果相等,满指针不动,快指针向前,如果不相等,慢指针被赋值为快指针的值,并且慢指针向前移动。

class Solution {
    public int removeDuplicates(int[] nums) {
        int n = nums.length;
        int fast = 2;
        int slow = 2;
        if(n<=2){
            return n;
        }
        while(fast<n){
            if(nums[slow-2] !=nums[fast]){
                nums[slow] = nums[fast];
                ++slow;
        }
        ++fast;
        }
        return slow;
    }
}

打完收工! 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1013489.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

刚考过PMP想问一下怎样才能转行做PM

引言&#xff1a; 在当今竞争激烈的职场环境下&#xff0c;许多人考虑转行成为项目经理&#xff08;PM&#xff09;&#xff0c;这是一个充满挑战和机遇的职业。虽然转行可能会面临一些困难&#xff0c;但通过采取适当的策略和技巧&#xff0c;你可以成功地转型为一名优秀的项目…

短视频业内有一句话:先模仿在超越

最近我在一个公众号发现了视频号爆款排行榜&#xff0c;这里集合了视频号的各种视频&#xff0c;可以帮助用户在视频号中了解目前最受欢迎和流行的内容类型。 除此之外很多人不知道这个视频号爆款排行是做什么的&#xff0c;主要是为了大家了解视频号的爆款数据以及为个人或者…

数据分析:小红书品牌“共情力”缔造指南

导语 “从哪来回哪去。”“你要带我回中国吗&#xff1f;” 8月30日&#xff0c;博主“煎饼果仔”、“夏天妹妹”发布自制短剧《逃出大英博物馆》&#xff0c;讲述一盏玉壶逃出大英博物馆寻找回国之路的故事&#xff0c;在发布后短时间内实现“现象级传播”。 见证现象级话题…

线性表-----栈(栈的初始化、建立、入栈、出栈、遍历、清空等操作)

目录 前言 栈 1.定义 2.栈的特点 3.栈的储存方式 3.1数组栈 3.2链栈 4.栈的基本操作&#xff08;C语言&#xff09; 4.1初始化 4.2判断是否满栈 4.3判断空栈 4.4 入栈 4.5 出栈 4.6获取栈顶元素 4.7遍历栈 4.8清空栈 完整代码示例 前言 大家好呀&#xff01;今天我…

聚观早报 | OPPO A2 Pro官宣;京东建材发布“1家1”计划

【聚观365】9月15日消息 OPPO A2 Pro官宣 京东建材发布“1家1”计划 谷歌开始新一轮“瘦身”计划 CapCut全球用户总支出超1亿美元 马斯克称特斯拉FSD安全性超过人类司机 OPPO A2 Pro官宣 去年11月&#xff0c;OPPO推出了A1 Pro&#xff0c;该机采用了120Hz OLED护眼曲屏&…

pyhton内置的数据类型(二)

pyhton内置的数据类型 一、内置数据类型的解释创建及赋值二、表示转义的符号实例操作 二、字符串的基本特性1.连接操作符 “ ” &#xff0c;提示&#xff1a;必须是同一数据类型才能相加2. 重复操作符 “ * ”3.成员操作符 “ in ”4. 正向索引和反向索引5. 切片&#xff08;…

Scholarcy:AI在线论文摘要总结工具

【产品介绍】 名称 scholarcy 成立/上线时间 2018年 具体描述 scholarcy是一个基于AI的在线论文文献摘要总结工具&#xff0c;可以帮助研究人员和学生快速阅读和理解各种类型的文献&#xff0c;如研究论文、报告和书籍章节。 scholarcy可以在几秒钟…

【Mybatis源码分析】插件机制和Pagehelper插件源码分析

分页插件Pagehelper源码分析 一、插件机制二、Pagehelper源码分析 前文叙述过以下内容&#xff1a;Mybatis对动态代理的使用&#xff0c;一二级缓存和懒加载的原理。其中二级缓存解释了在分布式环境下可能出现缓存不一致问题&#xff0c;但没说解决方案。其实个人认为这种问题除…

前端JavaScript中异步的终极解决方案:async/await

&#x1f3ac; 岸边的风&#xff1a;个人主页 &#x1f525; 个人专栏 :《 VUE 》 《 javaScript 》 ⛺️ 生活的理想&#xff0c;就是为了理想的生活 ! 1. 背景 在深入讨论 async/await 之前&#xff0c;我们需要了解一下 JavaScript 的单线程和非阻塞的特性。JavaScript 是…

编写postcss插件,全局css文件px转vw

跟目录下创建plugins文件夹&#xff0c;创建postcss-px-to-viewport.ts文件 文件内代码&#xff1a; // postcss 的插件 vite内置了postCss插件 无需安装 import { Plugin } from postcss;interface Options {viewportWidth: number }const Options {viewportWidth: 375, // …

mmdetection环境配置和安装

创建 openmmlab 虚拟环境 conda create -n openmmlab python3.7激活openmmlab环境 conda activate openmmlab安装torch 在torch官网查找安装自己电脑cuda对应的torch安装命令 conda install pytorch torchvision torchaudio pytorch-cuda11.7 -c pytorch -c nvidia使用 MIM …

Spring源码分析(三) bean的生命周期 createBean()和doCreateBean()

1、createBean() resolveBeforeInstantiation 也要详细介绍 打标机 protected Object createBean(String beanName, RootBeanDefinition mbd, Nullable Object[] args)throws BeanCreationException {if (logger.isTraceEnabled()) {logger.trace("Creating instance of b…

家庭安全不容小觑!青犀AI智能分析算法+摄像头助力家庭安全

你知道吗&#xff1f;高层家庭更需要人工摄像头&#xff01;虽然现在社会治安十分稳定&#xff0c;高层建筑更是安全&#xff0c;但高层盗窃、陌生人入室这些新闻还是层出不穷&#xff0c;为了解决这些安全隐患&#xff0c;给广大人民一个安心的生活环境&#xff0c;旭帆科技将…

线性方程组

目录 线性方程组 齐次线性方程组 基础解系 非齐次线性方程组 线性方程组 线性方程组是数学中的一个基本概念&#xff0c;它是指由一组线性方程组成的方程组。线性方程组的一般形式为&#xff1a; a1x1 a2x2 ... anxn b1 a1x1 a2x2 ... anxn b2 ... a1x1 a2x2 ..…

处理更多数据,大幅降低成本!Milvus MMap 启示录

作为 VectorDBBench 中最快的开源向量数据库&#xff0c;Milvus 可以很好地为有高性能需求的用户服务。与此同时&#xff0c;我们也注意到一些用户会将 Milvus 用在离线业务中&#xff0c;还有部分用户对性能需求并不敏感&#xff0c;这意味着在同规格的实例上&#xff0c;他们…

AI绘画的崛起与多平台对比

目录 引言AI绘画技术的发展历程主流AI绘画平台概览DeepArt.ioPrismaNVIDIA Canvas 对比分析与评价画风迁移能力创造力和创新性使用便利性和用户体验是否开源与社区互动 引言 随着科技的飞速发展&#xff0c;人工智能&#xff08;AI&#xff09;正逐渐渗透到我们生活的方方面面。…

国际版腾讯云/阿里云:全站加快有哪些功用?有哪些优势?适用于什么场景?

腾讯云全站加快有哪些功用&#xff1f;有哪些优势&#xff1f;适用于什么场景&#xff1f; 产品功用 全站加快 ECDN 经过在全球各区域部署加快节点&#xff0c;有用下降跨国拜访推迟&#xff0c;保证全球加快作用。 最优链路 各加快节点两两相连&#xff0c;实时勘探&#xff0…

【CentOS7】vsftpd学习笔记

2023年9月14日&#xff0c;周四下午 目录 安装vsftpd添加账号给账户设置新密码开放21号端口关闭21号端口查看vsftpd的运行状态启动vsftpd关闭vsftpd查看CentOS7的IP地址在Windows测试你的运行在CentOS7的用vftpd构建的FTP服务器查看Windows自带的ftp程序有哪些可用的命令 安装…

AI生成文章-AI文章生成工具

随着社会的发展人工智能技术的突破&#xff0c;越来越多的人开始使用AI来生成文章&#xff0c;但是有一个问题一直困扰着大家&#xff1a;AI生成的文章会不会变得千篇一律&#xff0c;重复无新意呢&#xff1f; AI生成文章的兴起 让我们简要回顾一下AI生成文章的兴起。随着深度…

一款功能齐全的网管软件:Ip-tools

摘要 Ip-tools是一款功能齐全的网管软件&#xff0c;可以随时随地的向网管员报告网络的运行情况ip-tools自身集成多种tcp/ip使用工具&#xff0c;如本地信息、网络监视器、NetBIOS信息查看器、共享扫描、SNMP扫描、主机名扫描、端口扫描、UDP扫描、ping工具、路由追踪工具、Tel…