JAVA去掉一个已排序数组的重复数字

82.给定一个已排序的链表的头 head , 删除原始链表中所有重复数字的节点,只留下不同的数字 。实现返回已排序的链表 通过对类似问题的分析和归纳,可以发现一些通用的解决方案思路,这些思路可以帮助我们更高效地解决链表相关的问题。在实际应用中,需要根据具体问题的要求进行适当的调整和优化。给定一个已排序的链表的头 head , 删除原始链表中所有重复数字的节点,只留下不同的数字。返回 已排序的链表。输入:head = [1,2,3,3,4,4,5]输入:head = [1,1,1,2,3]链表中节点数目在范围 [0, 300] 内。题目数据保证链表已经按升序 排列。输出:[1,2,5] 阅读详情
原文地址:http://www.java2000.net/p11764

论坛讨论地址: http://topic.youkuaiyun.com/u/20081109/14/EB2F41BF-52C3-4F9A-A7AD-F590A83887CC.html

我的一个方案,不过肯定有提升速度的地方
  1. import java.util.Arrays;

  2. /**
  3.  * JAVA去掉一个已经排好序的数组的重复数字,尽量快.
  4.  * 
  5.  * @author 老紫竹 JAVA世纪网(java2000.net)
  6.  * 
  7.  */
  8. public class Test {

  9.   public static void main(String args[]) {
  10.     int[] arr = { 1, 2, 2, 3, 3, 4, 4, 5, 5, 5, 6, 6, 7, 8, 9, 9, 10, 11, 11,
  11.         11, 12, 12, 13, 14, 14, 15 }; // 预设数据数组
  12.     int index = 1; // 保存最后一个不重复的位置
  13.     int last = arr[0];
  14.     for (int i = 1; i < arr.length; i++) {
  15.       if (arr[i] != last) {
  16.         arr[index] = arr[i];
  17.         last = arr[index];
  18.         index++;
  19.       }
  20.     }
  21.     int[] rtn = new int[index];
  22.     System.arraycopy(arr, 0, rtn, 0, index);
  23.     System.out.println(Arrays.toString(rtn));
  24.   }
  25. }

特别是步长的部分。

输入一个任意长度的数组,再对数组排序程序 输入一个数组,数组的长度有用户输入,然后再一次输出数组的元素。 立即下载

相关推荐

Cesium中GLB模型加载

Cesium中GLB模型加载全解析:Primitive与Entities方法详解

m0_72030584的博客 3473

删除有序数组中的重复项(java实现)

一、题目详情 给你一个 升序排列 的数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。元素的 相对顺序 应该保持 一致 。 由于在某些语言中不能改变数组的长度,所以必须将结果放在数组nums的第一部分。更规范地说,如果在删除重复项之后有 k 个元素,那么 nums 的前 k 个元素应该保存最终结果。 将最终结果插入 nums 的前 k 个位置后返回 k 。 不要使用额外的空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。

qq_40702349的博客 2067

IPD(集成产品开发)管理之道

IPD,是集成产品开发(Integrated Product Development)的缩写,它是集成了众多管理模型和理论、众多企业最佳管理实践的一整套体系,可以帮助企业快速响应市场变化、缩短产品上市时间、减少资源浪费、提高生产力,最终取得商业成功。IPD的思想最早来源于美国PRTM公司出版的《产品及生命周期优化法》一书中,该书详细描述了IPD模式所包含的各个方面。但IPD在中国的普及,源于IBM和华为的推行使用。IPD作为一套先进的产品研发管理模式,其成功的基础是功能部门和各团队之间的密切配合。

钢镚·真的博客 2715

Java数字去重

Java数字去重

victory77的博客 1102

手把手教你用STM32F103C8T6驱动HUB75 LED点阵屏(附74HC595级联代码)

本文详细介绍了如何使用STM32F103C8T6开发板驱动HUB75接口的LED点阵屏,包括硬件连接、74HC595级联代码、时序控制及灰度显示实现。通过实战案例展示动态文字显示和性能优化技巧,帮助开发者快速掌握LED点阵屏驱动技术。

weixin_42623010的博客 342

保姆级教程:在Davinci Configurator里配置BswM的ECU状态机(附状态切换流程图)

本文提供了一份详细的AUTOSAR BswM模块配置指南,通过Davinci Configurator工具实现ECU状态机的构建与管理。内容涵盖从模式请求端口创建到状态切换规则定义的全流程,特别针对Ecu State Handling进行了深入解析,并附有状态切换流程图,帮助汽车电子工程师高效完成ECU状态管理配置。

weixin_28366475的博客 411

java删除数组中重复元素的方法

1.声明int类型index,该数即可为不重复元素下标,还可统计数组中不重复元素的个数 2.第一层循环,遍历数组,取出每个元素 3.第二层循环,对第一层的元素进行判断是否重复,如果重复结束本次循环,否侧将该元素移动到赋值到相应下标数组 4.新建数组,长度为index,并将原数组的前index个元素赋值给新数组...

sdrfghb的博客 1万+

Ansys Circuit新手必看:IBIS模型导入时,Pin Import和Buffer Import到底怎么选?

本文详细解析了Ansys Circuit中IBIS模型导入时Pin Import与Buffer Import的选择策略,帮助SI/PI工程师根据仿真需求做出正确决策。通过对比两种方式的特性差异和应用场景,提供实用的选择指南和性能优化建议,提升信号完整性仿真效率。

weixin_26846533的博客 262

JAVA解决删除排序数组中的重复项(力扣)

给你一个升序排列的数组nums,请你原地删除重复出现的元素,使每个元素只出现一次,返回删除后数组的新长度。元素的相对顺序应该保持一致。不需要考虑数组中超出新长度后面的元素。 import java.util.Arrays; import java.util.Scanner; //给你一个升序排列的数组nums,请你原地删除重复出现的元素,使每个元素只出现一次,返回删除后数组的新长度。元素的相对顺序应该保持 一致 。 //不考虑数组中超出新长度后面的元素. //思路:由于题目要求只能在原数组上删除,且..

遇安的博客 1570

论文笔记:Group Equivariant Convolutional Networks

Group Equivariant Convolutional Networks 1、四个问题 要解决什么问题? 对卷积神经网络进行扩展,并提出一个在特定的变换(旋转、平移等,也可表示为一个特殊的群)下具有等变性的网络。 用了什么方法解决? 提出了一种新的卷积神经网络结构——群等变卷积神经网络(Group equivariant Convolutional Neural Network)...

hongbin_xu的博客 1万+

RK3588平台开发系列讲解(以太网篇)MDIO底层驱动

沉淀、分享、成长,让自己和他人都能有所收获!😄。

内核笔记 6885

Java 去除重复数据的五种方式

1.使用LinkedHashSet删除arraylist中的重复数据 LinkedHashSet是在一个ArrayList删除重复数据的最佳方法。LinkedHashSet在内部完成两件事: 删除重复数据 保持添加到其中的数据的顺序 Java示例使用LinkedHashSet删除arraylist中的重复项。在给定的示例中,numbersList是包含整数的arraylist,其中一些是重复的数字。 例如1,3和5.我们将列表添加到LinkedHashSet,然后将内容返回到列表中。结果arraylist没

狼魂之力 2万+

Python 爬虫实战:手机应用商店评论数据爬取与分析

移动应用市场蓬勃发展,用户的评论数据包含了大量有价值的信息,如用户满意度、功能反馈、改进建议等。通过分析这些评论,我们可以挖掘应用的优缺点,甚至预测用户趋势。由于 Apple App Store 评论是动态加载的,我们使用。本篇博客将详细介绍如何使用 Python 爬取。爬取大量数据时,可能会遇到反爬机制。库获取 Google Play 评论。评论数据是动态加载的,需要使用。

2201_76125261的博客 2323

java计蒜客试题排序后的数组删除重复数字

import java.util.Scanner; public class Main {     public static void main(String[] args) {         // TODO Auto-generated method stub      Scanner sc=new Scanner(System.in);      int  n=sc.ne

pioneer的博客 261

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

JAVA去掉数组重复数字

去掉一个已经排好序的数组的重复数字,执行速度也是考虑的问题。 package JAVA_Project_01_04;//创建一个包 /* 提供两种思路解决去掉重复数字:第一种是增加一个数组,但是长度无法确定,记录没有重复的值; 第二种是增加一个数组,用于记录原数组中存在的数,再增加一个数组可以确定数组的长度,用于存放原数组的值。 */ public class TextDelRepeat {//...

江南一只猫 1892

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

Java给定一个已排序的数组,使用就地算法将重复的数字移除,使数组中的每个元素只出现一次,返回新数组的长度。

题目描述 给定一个已排序的数组,使用就地算法将重复的数字移除,使数组中的每个元素只出现一次,返回新数组的长度。 不能为数组分配额外的空间,你必须使用常熟级空间复杂度的就地算法。 例如, 给定输入数组A=[1,1,2], 你给出的函数应该返回length=2,A数组现在是[1,2]。 public int removeDuplicates(int[] A) { if(A == null || A.length == 0){ return 0; ..

luzhensmart的专栏 1226

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

JAVA去掉一个已经排好序的数组的重复数字,尽量快

import java.util.Arrays; /** * JAVA去掉一个已经排好序的数组的重复数字,尽量快. * * @author 老紫竹 JAVA世纪网(java2000.net) * */ public class Test { public static void main(String args[]) { int[] arr = { 1, 2, 2, ...

通吃互联网 215

java找出不重复的数_关于Java:在整数数组中查找第一个非重复数

我有一个考试题:Given an integer array find the first number which is not repeating in array using O(N) time complexity and O(1) space complexity.我想不出任何解决方案。 我知道我可以遍历数组并维护一个linkedhashmap,它将存储数组元素和它出现的次数,然后最后我...

weixin_39907220的博客 834

去除数组{1,3,1,4,2,3,6,1,5}中的重复项,存入一个新的数组,并从大到小排序.

import java.util.Arrays; public class work07 { public static void main(String[] args) { //【难】去除数组{1,3,1,4,2,3,6,1,5}中的重复项,存入一个新的数组,并从大到小排序. int []oldArr= new int[]{1,3,1,4,2,3,6,1,5}; int []newArr=deleteRepeatItem(oldArr); ...

玉麒麟 1068

删除已排序数组中的重复数

public class DuplicatedNumberHandler { public static void main(String[] orgs){ int[] arr = {1,1,2,2,2,3,3,3,3,4,4,4,4,4,5,5,5,5,6}; DuplicatedNumberHandler handler = new DuplicatedNumberHandler()

fenglvming的专栏 647

容易 删除排序数组中的重复数字

Remove Duplicates from Sorted Array -- LeetCode 分类: LeetCode2014-02-27 05:12 4789人阅读 评论(5) 收藏 举报 leetcodejava面试链表数据结构 原题链接: http://oj.leetcode.com/problems/remove-duplicates-from-sorted-arr

兔清风的博客 5454

剑指 Offer 03. 数组中重复的数字

剑指 Offer 03. 数组中重复的数字1.题目描述2.题解思路2.1 哈希表实现2.2 排序法实现2.3 最优解法 1.题目描述 找出数组中重复的数字。 在一个长度为 n 的数组 nums 里的所有数字都在 0~n-1 的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/shu-zu-zhong-zhong-fu-de-shu-zi

weixin_50901244的博客 391
上一篇: 火龙果对提问正则表达式帖子的建议
下一篇: 微软把用户变成了傻瓜,却指责傻瓜不聪明
老紫竹
博客等级 码龄19年 1万+粉丝 1252原创
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值