当前位置:网站首页>LeetCode·26.删除有序数组中的重复项·双指针
LeetCode·26.删除有序数组中的重复项·双指针
2022-08-10 18:29:00 【小迅想变强】
链接:https://leetcode.cn/problems/remove-duplicates-from-sorted-array/solution/by-xun-ge-v-pz0q/
来源:力扣(LeetCode)
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处
题目
示例
思路
解题思路
双指针
删除数组中存在的相同元素,题目给定数组为指针,说明nums指向原始数组的地址,我们修改nums相当于修改了nums指向的地址,所以返回修改之后nums长度即可
对于本题我们定义两个指针,一个指向数组,遍历数组所有元素,当数组元素相同时,另外一个指针将当前位置之后的所有元素都向前移位,相当于删除操作
双指针优化
在上述解法中,我们需要遍历还需要搬运元素,时间复杂度为O(n^2),我们可以将遍历和搬运简化到一个循环中,定义双指针,当数组元素相同时,慢指针留着当前位置,快指针进行前进,直到不相等时,将快指针指向位置搬运到当前慢指针位置
代码
int removeDuplicates(int* nums, int numsSize){
int i, j;//定义快慢指针
for(i = 1, j = 0; i < numsSize; i++)//遍历整个数组
{
if(nums[i] == nums[j])//快指针进行走
{
continue;
}
nums[++j] = nums[i];//慢指针搬元素
}
return ++j;
}
作者:xun-ge-v
链接:https://leetcode.cn/problems/remove-duplicates-from-sorted-array/solution/by-xun-ge-v-pz0q/
来源:力扣(LeetCode)
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
边栏推荐
- const的自己理解
- Toronto Research Chemicals农药检测丨甲硫威
- openssl查看证书信息
- 【ARK UI】HarmonyOS ETS的引导页的实现
- 工业基础类—利用xBIM提取IFC几何数据
- Interface test advanced interface script using -apipost (pre/post execution script)
- 一颗完整意义的LPWAN SOC无线通信芯片——ASR6601
- 【HMS core】【FAQ】Account Kit、push Kit典型问题合集1
- 【2011】【论文笔记】用THz-TDS观察水树——
- StoneDB Document Bug Hunting Season 1
猜你喜欢
弘玑Cyclone与风变科技达成战略合作:优势互补聚焦数字化人才培养
CSV(Comma-Separate-Values)逗号分隔值文件
【FAQ】【Push Kit】 华为怎么设置角标
【HMS core】【FAQ】AR Engine、Analytics Kit、Video Editor Kit、Image Kit、Map Kit典型问题合集2
stm32中的CAN通讯列表模式配置解析与源码
【快应用】实现自定义导航栏组件
【HMS core】【FAQ】Account Kit、push Kit典型问题合集1
FPGA:生成固化文件(将代码固化到板子上面)
VoLTE基础自学系列 | 3GPP规范解读之Rx接口(上集)
组合模式
随机推荐
幕维三维动画——港珠澳大桥沉管安装三维动画实况
一颗完整意义的LPWAN SOC无线通信芯片——ASR6601
MySQL数据高级查询之连接查询、联合查询、子查询[通俗易懂]
FPGA工程师面试试题集锦91~100
【OpenCV】-物体的凸包
请问下在datastream中用flinkcdc怎么设置jdbc的参数useSSL=false呀
How to choose Fengjiawei PHY62xx series?PHY6222/PHY6212/PHY6252
【FAQ】【Push Kit】推送服务,回执配置一直报错、回执过期修改、怎么删除配置的回执
[Image dehazing] Image dehazing based on color attenuation prior with matlab code
[Image segmentation] Image segmentation based on cellular automata with matlab code
FPGA工程师面试试题集锦101~110
【HMS core】【FAQ】Account Kit、push Kit典型问题合集1
【2015】【论文笔记】等离子光混合器THz辐射的光谱——
容器化 | 在 S3 实现定时备份
MSE 治理中心重磅升级-流量治理、数据库治理、同 AZ 优先
企业即时通讯是什么?可以应用在哪些场景?
搭载2.8K 120Hz OLED华硕好屏 无畏Pro15 2022锐龙版屏开得胜
哈夫曼实现文件压缩解压缩(c语言)
【快应用】如何使用命令打包快应用rpk
剑指 Offer 27. 二叉树的镜像(翻转二叉树)