当前位置:网站首页>LeetCode26:删除有序数组中的重复项
LeetCode26:删除有序数组中的重复项
2022-08-09 21:35:00 【哆啦k梦0219】
给你一个 升序排列 的数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。元素的 相对顺序 应该保持 一致 。
由于在某些语言中不能改变数组的长度,所以必须将结果放在数组nums的第一部分。更规范地说,如果在删除重复项之后有 k 个元素,那么 nums 的前 k 个元素应该保存最终结果。
将最终结果插入 nums 的前 k 个位置后返回 k 。
不要使用额外的空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。
来源:力扣(LeetCode)
链接:https://leetcode.cn/problems/remove-duplicates-from-sorted-array
本题目采用双指针法,在力扣评论区看到这样一段话非常有意思,可以帮助我们理解这个双指针法:
双指针法 (C++)
双指针法在数组、链表题目中都有很大的用处。
class Solution {
public:
int removeDuplicates(vector<int>& nums)
{
int fast = 1;//快指针
int slow = 0;//慢指针
if(nums.size()==0)
return 0;
for(fast = 1;fast<nums.size();fast++)//注意C++容器中是.size()获得容量,没有.length()
{
if(nums[fast]!=nums[slow])
{
slow++;
nums[slow]=nums[fast];
}
}
return slow+1;//长度 = 下标+1
}
};
边栏推荐
猜你喜欢
DSPE-PEG-Azide,DSPE-PEG-N3,磷脂-聚乙二醇-叠氮可和DBCO直接反应
LoRa Basics无线通信技术和应用案例详解
Word怎么设置图片衬于文字下方?两种方法教你设置Word图片衬于文字下方
POWER SOURCE ETA埃塔电源维修FHG24SX-U概述
[Deep learning] pix2pix GAN theory and code implementation
URL Protocol web page to open the application
角度和弧度的相互换算
Simulation of Water Temperature Control System Based on Fuzzy PID Controller
上海控安SmartRocket系列产品推介(三):SmartRocket iVerifier计算机联锁系统验证工具
10个 Istio 流量管理 最常用的例子,你知道几个?
随机推荐
DSPE-PEG-Silane,DSPE-PEG-SIL,磷脂-聚乙二醇-硅烷修饰二氧化硅颗粒用
Word箭头上面怎么打字
cadence中复制一部分PCB到另一个PCB中去
数独 | 回溯-7
[Generic Programming] Full Detailed Explanation of Templates
PMP daily practice | didn't lost a 8.9 (including agile + multi-select)
Can I make a TCP connection without accept?
DSPE-PEG-Silane, DSPE-PEG-SIL, phospholipid-polyethylene glycol-silane modified silica particles
Byte side: Can TCP and UDP use the same port?
linux定时执行sql文件[通俗易懂]
Excel如何打出正负号?Excel打出正负号的方法
访问控制知识
必看设计干货|易知微设计师是怎么做标准可视化设计服务的?
同步锁synchronized追本溯源
基于Docker构建MySQL主从复制数据库
Jensen (琴生) 不等式
MySQL:错误1153(08S01):得到的数据包大于“ max_allowed_packet”字节
gmail+mtalk配合打免费网络电话。
下秒数据:湖仓一体带来的现代数据堆栈变革开始了
企业数据打通有什么好处?不同行业怎么解决数据打通难题?