java中如何删除排序数组中的重复项
发表于:2026-11-04 作者:千家信息网编辑
千家信息网最后更新 2026年11月04日,这篇文章主要为大家展示了"java中如何删除排序数组中的重复项",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"java中如何删除排序数组中的重复项"这篇文章
千家信息网最后更新 2026年11月04日java中如何删除排序数组中的重复项
这篇文章主要为大家展示了"java中如何删除排序数组中的重复项",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"java中如何删除排序数组中的重复项"这篇文章吧。
给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素最多出现两次,返回移除后数组的新长度。
不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。
示例 1:
给定 nums = [1,1,1,2,2,3],
函数应返回新长度 length = 5, 并且原数组的前五个元素被修改为 1, 1, 2, 2, 3 。
你不需要考虑数组中超出新长度后面的元素。
示例 2:
给定 nums = [0,0,1,1,1,1,2,3,3],
函数应返回新长度 length = 7, 并且原数组的前五个元素被修改为 0, 0, 1, 1, 2, 3, 3 。
你不需要考虑数组中超出新长度后面的元素。
答案:
1public int removeDuplicates(int[] nums) {
2 int n = nums.length;
3 if (n < 2)
4 return n;
5 int pos = 2;
6 for (int i = 2; i < n; ++i)
7 if (nums[i] != nums[pos - 2])
8 nums[pos++] = nums[i];
9 return pos;
10}
解析:
题目中说的是排序的数组,那这就简单了。代码比较简单就不再介绍,下面再来看一下其他的解法。
1public int removeDuplicates(int[] nums) {
2 int i = 0;
3 for (int n : nums)
4 if (i < 2 || n > nums[i - 2])
5 nums[i++] = n;
6 return i;
7}
8
9public int removeDuplicates(int[] nums) {
10 int n = nums.length, count = 0;
11 for (int i = 2; i < n; i++)
12 if (nums[i] == nums[i - 2 - count])
13 count++;
14 else
15 nums[i - count] = nums[i];
16 return n - count;
17}
解法都大同小异,基本思想还是没变。
Java的特点有哪些
Java的特点有哪些 1.Java语言作为静态面向对象编程语言的代表,实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。 2.Java具有简单性、面向对象、分布式、安全性、平台独立与可移植性、动态性等特点。 3.使用Java可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序等。
以上是"java中如何删除排序数组中的重复项"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!
数组
元素
排序
长度
程序
内容
对象
应用程序
特点
篇文章
应用
函数
分布式
原地
示例
空间
系统
解法
语言
中超
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
云南咖啡
互联网 科技创业
艾特科技互联网
鑫亿盛互联网科技
腾讯科技 互联网女皇
兼蜜互联网科技
天扬科技互联网广告
互联网科技大会案例
华中科技有哪些互联网大佬
宁波青枫互联网科技有限公司
来此购互联网科技有限公司
全球顶尖互联网科技公司
岳阳华臻互联网科技有限公司
山东有哪些互联网科技公司
众安科技工业互联网合作
互联网风格科技公司名称
互联网科技包装股份有限公司上市
万物互联网智能科技
10位科技互联网大佬
互联网科技创业计划的风险分析
互联网是第几次科技革命的成果
金融科技与互联网金融
互联网科技网站
广州慧亚互联网科技怎么样
彤创互联网科技有限公司
晓花互联网科技有限公司网址
深圳市优智互联网科技有限公司
深圳无忧互联网科技
互联网科技品牌
互联网科技快速发展优美句子