LeetCode删除排序数组中的重复项(Java实现)
原题:
给定一个排序数组,你需要在 原地 删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。
不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 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。
你不需要考虑数组中超出新长度后面的元素。
解题思路:
1、数据是有序的,说明相同的元素总在一起
2、不要使用额外的数组空间,这个就限制了使用treeSet的方法
所以这个题可以理解为:在一个有序数组中找到所有不同的元素的个数
答案:
使用双指针,剔除相同的元素
class Solution {public int removeDuplicates(int[] nums) {if(nums == null || nums.length == 0){return 0;}int a = 0;for(int b=1;b<nums.length;b++){if(nums[a] != nums[b]){a++;nums[a]=nums[b];}}return a+1;}
}
网友的视频动画讲解:
https://mp.weixin.qq.com/s/JcsBahMXtwX2I7QkO6OTJA
LeetCode删除排序数组中的重复项(Java实现)相关推荐
- leetcode 删除排序数组中的重复项
161 / 161 个通过测试用例 状态:通过 执行用时:177 ms 内存消耗:50.4 MB 提交时间:6 月,3 周之前 class Solution {public int removeDup ...
- [LeetCode][Python][C#]刷题记录 26. 删除排序数组中的重复项
这道题我真的纠结好久,因为没注意那个原地的题目要求,所以很奇怪怎么我电脑运行成功,但是LeetCode上运行就是不对.气哭. 感谢群友lino的帮助.他试了set方法不行,直接喂给我的答案了... 题 ...
- c++两个数组对比去掉重复的元素_每日一道 LeetCode (8):删除排序数组中的重复项和移除元素...
❝ 每天 3 分钟,走上算法的逆袭之路. ❞ 前文合集 每日一道 LeetCode 前文合集 代码仓库 GitHub:https://github.com/meteor1993/LeetCode Gi ...
- C++描述 LeetCode 26. 删除排序数组中的重复项
C++描述 LeetCode 26. 删除排序数组中的重复项 大家好,我叫亓官劼(qí guān jié ),在CSDN中记录学习的点滴历程,时光荏苒,未来可期,加油~博主目前仅在CSDN中写博客 ...
- LeetCode 79单词搜索80删除排序数组中的重复项Ⅱ81.搜索旋转排序数组Ⅱ
新人公众号(求支持):bigsai 专注于Java.数据结构与算法,一起进大厂不迷路! 算法文章题解全部收录在github仓库bigsai-algorithm,求star! 关注回复进群即可加入力扣打 ...
- LeetCode题组:第26题-删除排序数组中的重复项
1.题目:删除排序数组中的重复项 给定一个排序数组,你需要在 原地 删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度.(注意这里提到了排序数组,也就是说数组是有序的.如果无序,我们又 ...
- LeetCode 25K 个一组翻转链表26删除排序数组中的重复项
如果问题或者其他方法还请分享,如加入打卡微信搜索bigsai回复进群一起打卡. K个一组翻转链表 题目要求 给你一个链表,每 k 个节点一组进行翻转,请你返回翻转后的链表. k 是一个正整数,它的值小 ...
- leetcode初级算法1.删除排序数组中的重复项
leecode初级算法1.删除排序数组中的重复项 仅为个人刷题记录,不提供解题思路 题解与收获 class Solution {public int removeDuplicates(int[] nu ...
- vue删除数组中的一条数据_删除排序数组中的重复项 II
删除排序数组中的重复项 II题目 给定一个增序排列数组 nums ,你需要在 原地 删除重复出现的元素,使得每个元素最多出现两次,返回移除后数组的新长度. 不要使用额外的数组空间,你必须在 原地 修改 ...
最新文章
- Phalcon和YII的优点
- 一本书——《锋利的jQuery》
- java set 接口_【Java提高十七】Set接口集合详解
- 安全测试基础 -- 概述【转载】
- 1 week110的zookeeper的安装 + zookeeper提供少量数据的存储
- 2018 ACM-ICPC World Finals - Beijing
- Code First :使用Entity. Framework编程(6) ----转发 收藏
- Android断点续传下载器JarvisDownloader
- Tellico-经管你的收藏品
- shell 第六次作业(grep正则、sed)
- java中4种修饰符访问权限的区别
- java类型转换方法_Java中基本数据类型转换的方法
- 《OpenGL编程指南(原书第9版)》——3.4 OpenGL的绘制命令
- 用SPSS进行描述性分析
- ACCESS数据库程序设计
- 汇编:Debug的常用命令
- Typora Beta版过期解决
- 英文写作盲点-less than 和 fewer than 、only
- 《关键对话》教你如何摆脱沟通困境
- RTL8367/N/RB/S/SC系列千兆交换机方案选型参考
热门文章
- 斯坦福大学CS520知识图谱系列课程学习笔记:第二讲如何构建知识图谱
- Python3-笔记-B-003-数据结构-元组tuple( )
- SpringMVC 应用配置
- 3个技巧让你正能量满满
- 今天专攻POWERSHELL获取本机CPU,内存消耗
- SharePoint创建web application的时候报错
- 【读书笔记】《框架设计(第2版)CLR Via C#》中两个比较有趣的知识点
- ASP.NET页面的结构
- 转:用ASP.NET创建网络相册
- MySQL小问题:cant connect to MYSQL server on localhost