力扣之删除有序数组中的重复项
力扣:26. 删除有序数组中的重复项 - 力扣(LeetCode)
方法:双指针法。
我的方法:
class Solution {
public:int removeDuplicates(vector<int>& nums) {int slow =0,fast;for(fast = 0; fast < nums.size() - 1 ; fast ++){if(nums[fast] != nums[fast + 1]){nums[slow ++ ] = nums[fast];}}nums[slow ++] = nums[nums.size() - 1];return slow;}
};
fast指针是用来遍历数组,寻找符合要求的数组元素,slow是用来更新数组元素的。我的方法是判断右边的数字是否与自身相等,如果相等,fast++,直到到达了重复数组的右边界元素,放入到slow指向的位置。对于最后一个元素,不管有没有重复,都需要放入到新数组中。
其他的方法:
class Solution {
public:int removeDuplicates(vector<int>& nums) {int n = nums.size();if(n == 0) return 0;int j = 0;for(int i = 0; i < n; i++){if(nums[j] != nums[i]){nums[++j] = nums[i];}}return j + 1;}
};
双指针解法
一个指针 i 进行数组遍历,另外一个指针 j 指向有效数组的最后一个位置。只有当 i 所指向的值和 j 不一致(不重复),才将 i 的值添加到 j 的下一位置。
附录:
26. 删除有序数组中的重复项 - 力扣(LeetCode)
相关文章:
力扣之删除有序数组中的重复项
力扣:26. 删除有序数组中的重复项 - 力扣(LeetCode) 方法:双指针法。 我的方法: class Solution { public:int removeDuplicates(vector<int>& nums) {int slow 0,fast;for(fast 0; fast < nums.size()…...
pnpm、npm、yarn 包管理工具『优劣对比』及『环境迁移』
前言 博主在开发前端网站的时候,发现随着开发的项目的逐渐增多,安装的依赖包越来越臃肿,依赖包的安装速度也是非常越来越慢,多项目开发管理也是比较麻烦。之前我就了解过 pnpm,但是当时担心更换包管理环境可能会出现的…...
【AntDesign】多环境配置和启动
环境分类,可以分为 本地环境、测试环境、生产环境等,通过对不同环境配置内容,来实现对不同环境做不同的事情。 AntDesign 项目,通过 config.xxx.ts 添加不同的后缀来区分配置文件,启动时候通过后缀启动即可。 config…...
Unix Network Programming Episode 78
‘getaddrinfo’ Function The gethostbyname and gethostbyaddr functions only support IPv4. The API for resolving IPv6 addresses went through several iterations, as will be described in Section 11.20(See 8.9.20); the final result is the getaddrinfo function…...
学习笔记(css穿透、vue-cookie、拦截器、vuex、导航守卫、token/Cookie、正则校验)
目录 一、记录 1、CSS穿透 2、输入框是否提示输入 3、插槽 #slot 4、v-deep深入改掉属性值 二、vue-cookie 1、官方文档 2、使用 三、拦截器 1、请求拦截器 2、响应拦截器 四、vuex对信息存取改 五、路由导航守卫 1、登录思路 2、设置白名单 六、Token与Cookie…...
Day4:Linux系统编程1-60P
我的学习方法是:Linux系统编程(看pdf笔记) Linux网络编程 WebServer 01P-17P Linux相关命令及操作 cp -a dirname1 dirname2 复制目录 cp -r dirname1 dirname2 递归复制目录 1 到目录 2 这里-a 和-r 的差别在于,-a 是完全复制…...
【HuggingFace】Transformers(V4.34.0 稳定)支持的模型
Transformer 4.43.40 版本是自然语言处理领域的一个重要工具包,为开发者提供了丰富的预训练模型资源,可以用于各种文本处理任务。在这个版本中,Transformer 支持了众多模型,每个模型都具有不同的优势和适用领域。下面是一个 Trans…...
oracle 导入数据泵常用语句
oracle常用语句 window10 导出导入数据泵文件导入数据泵文件导出数据泵文件 oracle表空间查询、剩余空间查询查询表空间大小及对应文件查询各个表空间大小扩充表空间 window10 导出导入数据泵文件 导入数据泵文件 首先将数据泵文件放在oracle安装得对应位置,例如&…...
tensorflow中的常见方法
1.tf.argmax(input,axis) tf.argmax(input,axis)根据axis取值的不同返回每行或者每列最大值的索引。 axis 0: 比较每一列的元素,将每一列最大元素所在的索引记录下来,最后输出每一列最大元素所在的索引数组。 test[0] array([1, 2, 3]) test[1] …...
【周末闲谈】“PHP是最好的语言”这个梗是怎么来的?
个人主页:【😊个人主页】 系列专栏:【❤️周末闲谈】 系列目录 ✨第一周 二进制VS三进制 ✨第二周 文心一言,模仿还是超越? ✨第二周 畅想AR 文章目录 系列目录前言最早的出处关于PHP语言优点缺点网络评价 总结 前言 …...
四位十进制数字频率计VHDL,仿真视频、代码
名称:四位十进制数字频率计VHDL,quartus仿真 软件:Quartus 语言:VHDL 代码功能: 使用直接测频法测量信号频率,测频范围为1~9999Hz,具有超量程报警功能 演示视频:四位十进制数字频…...
Unity实现设计模式——策略模式
Unity实现设计模式——策略模式 策略模式是一种定义一些列算法的方法,这些所有的算法都是完成相同的工作,只是实现不同。它可以通过相同的方式调用所有的算法,减少各种算法类与使用算法类之间的耦合。 策略模式的 Strategy 类层次为 Contex…...
C++基础——数据类型
1 概述 在创建变量和常量的时候,都需要指定其数据类型,以便为其分配合适的内存空间。 其中宏常量不需要指定类型,是因为宏定义是字符替换。 2 整型 整型表示的是整数,C中的整型有以下几种: 数据类型占用空间取值范…...
文本自动输入/删除的加载动画效果
效果展示 CSS 知识点 绕矩形四周跑的光柱动画实现animation 属性的 steps 属性值运用 页面基础结构实现 <div class"loader"><!-- span 标签是围绕矩形四周的光柱 --><span></span><span></span><span></span>&l…...
PHP8的匿名类-PHP8知识详解
PHP8支持通过new class 来实例化一个匿名类。所谓匿名类,就是指没有名称的类,只能在创建时使用new语句来声明它们。 匿名类是一种没有命名的即时类,可以用于简单的对象封装和实现接口。 以下是PHP 8中匿名类的基本语法示例: $ob…...
WebKit Inside: CSS 样式表的匹配时机
WebKit Inside: CSS 的解析 介绍了 CSS 样式表的解析过程,这篇文章继续介绍 CSS 的匹配时机。 无外部样式表 内部样式表和行内样式表本身就在 HTML 里面,解析 HTML 标签构建 DOM 树时内部样式表和行内样式就会被解析完毕。因此如果 HTML 里面只有内部样式…...
<HarmonyOS第一课>从简单的页面开始——闯关习题及答案
加入鸿蒙应用开发公开课系统学习HarmonyOS应用开发 判断题 1.在Column容器中的子组件默认是按照从上到下的垂直方向布局的,其主轴的方向是垂直方向,在Row容器中的组件默认是按照从左到右的水平方向布局的,其主轴的方向是水平方向。ÿ…...
视频下载plus+:一款强大的视频下载小程序
引言 在当下,随着视频号的火爆和用户数量的不断增加,视频下载已经成为了众多用户追求的目标。尽管市面上有很多视频下载助手,但是很多人对于如何下载视频还是摸不着头脑。今天我将向大家推荐一款我自己使用并且非常好用的视频下载小程序——…...
扭线机控制
扭线机属于线缆加工设备,线缆加工设备种类非常多。有用于网线绞合的单绞,双绞机等,有关单绞机相关算法介绍,大家可以查看专栏相关文章,有详细介绍,常用链接如下: 线缆行业单绞机控制算法&#…...
Android App启动优化之启动框架
android启动优化是个比较重要的部分,也是一大难题,一个优秀的app首先给人第一感觉就是启动速度,启动速度非常影响用户的体验,那么我们今天展开说说启动优化相关的问题。 我们先来简单分析一下启动过程、启动优化方向,…...
BilibiliDown完整使用教程:三步搞定B站视频批量下载
BilibiliDown完整使用教程:三步搞定B站视频批量下载 【免费下载链接】BilibiliDown (GUI-多平台支持) B站 哔哩哔哩 视频下载器。支持稍后再看、收藏夹、UP主视频批量下载|Bilibili Video Downloader 😳 项目地址: https://gitcode.com/gh_mirrors/bi/…...
从Excel到Python:用Pandas的fillna优雅处理缺失值,数据分析效率翻倍
从Excel到Python:用Pandas的fillna优雅处理缺失值,数据分析效率翻倍 当你在Excel中处理上千行数据时,是否曾被那些零散的#N/A或空白单元格折磨得焦头烂额?CtrlF查找替换、IFERROR函数嵌套、手动拖拽填充柄...这些操作在小型数据集…...
环境配置与基础教程:保姆级教程:在 Mac M 芯片上利用 MPS 加速 YOLO 训练与推理的完整环境搭建
写在前面:为什么你的 Mac 也能跑深度学习? 几年前,如果有人告诉你用 MacBook 训练深度学习模型,你大概会笑出声。那时候 Mac 上的 PyTorch 只能依赖 CPU 吭哧吭哧地算,训练一个小模型都要等到天荒地老。但自从 Apple Silicon 芯片(M1、M2、M3、M4,以及最新的 M5)横空出…...
C#调用打印机老是失败?先别怪代码,这5个Windows驱动设置坑你踩过几个?
C#调用打印机故障排查指南:5个被忽视的Windows驱动陷阱 当你信心满满地写完C#打印代码,点击"打印"按钮后却只收获了一片寂静——打印机毫无反应,控制台也没有任何错误提示。这种挫败感每个C#开发者都经历过。但先别急着重写代码&am…...
鲲鹏超节点系统应用创新竞争力
鲲鹏超节点通过灵衢互联,打破传统的服务器边界,实现以数据为中心的全互联架构,为AI infra而生,具备大带宽、低时延、统一编址、内存语义、内存借用、内存共享、对等互联等关键能力,灵衢软件全面开源开放,让…...
明日方舟游戏素材宝库:8000+高清美术资源免费获取终极指南
明日方舟游戏素材宝库:8000高清美术资源免费获取终极指南 【免费下载链接】ArknightsGameResource 明日方舟客户端素材 项目地址: https://gitcode.com/gh_mirrors/ar/ArknightsGameResource 你是否曾为寻找高质量的游戏美术素材而烦恼?无论是角色…...
如何快速掌握JSON Lint for PHP:从新手到专家的完整指南
如何快速掌握JSON Lint for PHP:从新手到专家的完整指南 【免费下载链接】jsonlint JSON Lint for PHP 项目地址: https://gitcode.com/gh_mirrors/jso/jsonlint 你是否曾经在深夜里调试JSON数据,却被那些晦涩难懂的错误信息折磨得焦头烂额&#…...
kill-doc文档下载工具终极指南:轻松获取30+平台免费文档资源
kill-doc文档下载工具终极指南:轻松获取30平台免费文档资源 【免费下载链接】kill-doc 看到经常有小伙伴们需要下载一些免费文档,但是相关网站浏览体验不好各种广告,各种登录验证,需要很多步骤才能下载文档,该脚本就是…...
从零构建轻量级爬虫框架:模块化设计与异步实现详解
1. 项目概述:从零构建一个轻量级数据爬取框架最近在做一个需要从多个公开数据源定期抓取结构化信息的小项目,一开始图省事,直接上requests加BeautifulSoup写脚本。但随着数据源增加到五六个,每个源的页面结构、反爬策略、数据清洗…...
Docker容器化机械臂控制:OpenClaw项目环境部署与实战
1. 项目概述:当机械臂遇上Docker最近在折腾一个挺有意思的项目,叫openclaw-in-docker。光看名字,很多朋友可能就猜到了,这是一个把开源机械臂控制项目OpenClaw给容器化的工程。简单来说,就是把原本可能需要在特定系统、…...
