26. 删除排序数组中的重复项
给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。
不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。
示例 1:
给定数组 nums = [1,1,2],
函数应该返回新的长度 2, 并且原数组 nums 的前两个元素被修改为 1, 2。
你不需要考虑数组中超出新长度后面的元素。
示例 2:给定 nums = [0,0,1,1,1,2,2,3,3,4],
函数应该返回新的长度 5, 并且原数组 nums 的前五个元素被修改为 0, 1, 2, 3, 4。
你不需要考虑数组中超出新长度后面的元素。
说明:为什么返回数值是整数,但输出的答案是数组呢?
请注意,输入数组是以“引用”方式传递的,这意味着在函数里修改输入数组对于调用者是可见的。
你可以想象内部操作如下:
// nums 是以“引用”方式传递的。也就是说,不对实参做任何拷贝
int len = removeDuplicates(nums);// 在函数里修改输入数组对于调用者是可见的。
// 根据你的函数返回的长度, 它会打印出数组中该长度范围内的所有元素。
for (int i = 0; i < len; i++) {
print(nums[i]);
}
解题代码一:
class Solution {
public:int removeDuplicates(vector<int>& nums) {if(nums.empty()) return 0;int ans = 1;for(int i = 1; i < nums.size(); i ++) {if(nums[i] == nums[i-1]) continue;nums[ans++] = nums[i];}return ans;}
};
解题代码二:
class Solution {
public:int removeDuplicates(vector<int>& nums) {int count = 0;for(int i = 1; i < nums.size(); ++i){if(nums[i] == nums[i - 1])++count;elsenums[i - count] = nums[i];}reuturn nums.size() - count;}
};
26. 删除排序数组中的重复项相关推荐
- 26. 删除排序数组中的重复项 golang
26. 删除排序数组中的重复项 给定一个排序数组,你需要在 原地 删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度. 不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 ...
- [LeetCode][Python][C#]刷题记录 26. 删除排序数组中的重复项
这道题我真的纠结好久,因为没注意那个原地的题目要求,所以很奇怪怎么我电脑运行成功,但是LeetCode上运行就是不对.气哭. 感谢群友lino的帮助.他试了set方法不行,直接喂给我的答案了... 题 ...
- ios 数组中的字典排序_题解 | 26.删除排序数组中的重复项
假设我们有一个传感器,会不停地向 HQ 传输已经归类好数据,数据的格式全部是数字(种类编号),且已经按照从小到大的顺序排列,大概是 [1,1,4,5,7,9] 这样的,但是我们的需求在于,希望知道有多 ...
- C++描述 LeetCode 26. 删除排序数组中的重复项
C++描述 LeetCode 26. 删除排序数组中的重复项 大家好,我叫亓官劼(qí guān jié ),在CSDN中记录学习的点滴历程,时光荏苒,未来可期,加油~博主目前仅在CSDN中写博客 ...
- LeetCode 25K 个一组翻转链表26删除排序数组中的重复项
如果问题或者其他方法还请分享,如加入打卡微信搜索bigsai回复进群一起打卡. K个一组翻转链表 题目要求 给你一个链表,每 k 个节点一组进行翻转,请你返回翻转后的链表. k 是一个正整数,它的值小 ...
- LeetCode(#26)————删除排序数组中的重复项
题目 给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度. 不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成. 示 ...
- leetcode 26 删除排序数组中的重复项
https://leetcode-cn.com/problems/remove-duplicates-from-sorted-array 给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素 ...
- 26.删除排序数组中的重复项
给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度. 不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成. 我的实现 ...
- python有序数组中删除元素_python刷LeetCode:26. 删除排序数组中的重复项
题目描述: 给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度. 不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成 ...
最新文章
- k8s的imagePullSecrets如何生成及使用
- 为什么明星公司会选择Go作为编程语言?
- 用户描述 和 组描述 和 远程连接
- html to txt研究
- Apache Wicket:记住我的功能
- CDH 5.13.0 集成 Phoenix
- spring事务的传播机制新解
- Python 配置文件之ConfigParser模块(实例、封装)
- SpringBoot-Jsoup做java简单-爬虫
- Atom飞行手册翻译: 2.2 在Atom中移动
- java调用数据库存储过程_Java调用SQL Server的存储过程详解
- 中科微GPS模块使用教程 ATGM332D ATGM336H GSP模块 单片机程序 C程序
- 计算机可以计算出十的一百次方吗,世界上最大的数字单位 古戈尔(1古戈尔等于10的100次方)...
- 为什么宝宝做错事被骂哭后,还要求抱抱?
- 公务员考试要求及流程梳理
- 用Java写一款小游戏
- 十二要素应用宣言(The Twelve-Factor App)
- 如何优化物联网边缘设备的能源使用
- Linux下配置ip地址
- 如何将360流量监控数据清零 解决方法
热门文章
- 选哪个云计算平台部署自己的网站?
- Linux Vim 光标错位,技术|Vim 复制粘帖格式错乱问题的解决办法
- 修改mysql编码方式centos_CentOS下修改mysql数据库编码为UTF-8(附mysql开启远程链接和开放3306端口)...
- ceph存储原理_热门的分布式存储系统ceph入门介绍
- 移动端实现元素拖拽效果插件_基于自然流布局的可视化拖拽搭建平台设计方案...
- 如何给linux目录加密码,怎么只给一个文件夹的内容加密?
- php 查询方法all,获取多条:all静态方法
- python第五章上机实践报告_第五章实践报告 - osc_kk5bjg1i的个人空间 - OSCHINA - 中文开源技术交流社区...
- mysql加锁语法_MySql 加锁问题
- 国际旅游管理专业跨专业考计算机,旅游管理考研我想跨专业考旅游管理专业的研究 – 手机爱问...