`

去除数组中的重复数据

阅读更多
    今看到一个小题目,,要求前提是不允许使用util包以及之外的类,即任何集合类都不允许使用。 写出的算法效率越高,此题得分越高,大家可以试一下。题目是输入一串已经排序好的数组,输出消除重复数之后的数组。例如:
输入{ 1, 2, 2, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 5 };输出{ 1, 2, 3, 4, 5 };

看了下,,写个算法转化为字符串的操作。
public static void main(String[] args) {
		// TODO Auto-generated method stub
	  
		int[] a = {-1,0, 1, 2, 2, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 5 };
		StringBuffer source=new StringBuffer();
		for(int i:a){
			source.append(i);
			source.append(",");
		}
		String temp;
		String sList=source.toString();
		System.out.println(sList);
		StringBuffer sb=new StringBuffer();
//		System.out.println(sList.substring(0,sList.indexOf(",")));
		while(sList.length()>0){
			temp=sList.substring(0,sList.indexOf(","));
			sb.append(temp);
			sb.append(",");
			sList=sList.replace(temp+",", "").trim();
		}
		
		System.out.println(sb.toString());
		
	}


   大家有什么好的策略,请赐教。。
分享到:
评论
2 楼 gbfd2012 2011-08-09  
x19881216 写道
	public static void main(String[] args) {
		int[] a = { -1,0, 1, 2, 2, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 5 };
		int b = a[0];
		int i = 1;

		for (int d : a) {
			if (d > b) {
				b = d;
				a[i] = b;
				i++;
			}
		}

		int[] e = new int[i];

		for (int j = 0; j < i; j++) {
			e[j] = a[j];
		}

		System.out.println(Arrays.toString(e));
	}

不借助任何工具类

好啊。
1 楼 x19881216 2011-08-09  
	public static void main(String[] args) {
		int[] a = { -1,0, 1, 2, 2, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 5 };
		int b = a[0];
		int i = 1;

		for (int d : a) {
			if (d > b) {
				b = d;
				a[i] = b;
				i++;
			}
		}

		int[] e = new int[i];

		for (int j = 0; j < i; j++) {
			e[j] = a[j];
		}

		System.out.println(Arrays.toString(e));
	}

不借助任何工具类

相关推荐

    matlab中如何去掉数组中重复的值

    在数据处理过程中,去除数组中重复的值是一个常见的问题,本文将介绍 Matlab 中去掉数组中重复的值的方法。 unique 函数 Matlab 提供了一个名为 unique 的函数,该函数可以删除数组中的重复值。unique 函数的基本...

    LabVIEW 删除数组中重复元素实例

    总之,“LabVIEW 删除数组中重复元素实例”这个主题涵盖的是如何在图形化编程环境下有效地处理数组数据,确保其唯一性。通过理解数组操作的基本原理,结合LabVIEW提供的工具和函数,我们可以创建出高效且易于维护的...

    jquery删除数组中重复元素

    话不多说,下面就跟着小编来看下利用jquery实现删除数组中重复元素的具体思路吧 首先定义如下数组: var arr=[0,2,3,5,6,9,2]; 我们可以看到数组中存在重复元素’2′; 最后通过jquery筛选应该得到[0,2,3,5,6,9]; ok...

    php去除数组中重复数据

    在PHP中,去除数组中的重复数据是一个常见的需求,尤其是在处理大量数据时。在本文中,作者通过自定义函数提供了去除数组中重复数据的方法,并与PHP内置函数array_unique进行了比较。 首先,PHP内置的array_unique...

    删除数组中的重复元素

    这是一个用C++编的删除数组中的重复元素的程序~

    二维数组去除重复项

    通过上述分析,我们可以看出,`unique_arr`函数提供了一种有效的方法来处理二维数组中的重复数据,同时提供了灵活性,允许用户选择是否保留键名。这对于数据预处理、数据分析以及数据库操作等场景非常有用。然而,...

    易语言取数组中重复文本下标

    本篇文章将深入探讨如何在易语言中利用源码查找并获取数组中重复文本的下标,以及如何实现去除数组中的重复元素。 首先,我们要理解易语言的基本语法结构。易语言采用直观的中文关键字,使得编程过程更加符合中国...

    Java替换int数组中重复数据的方法示例

    Java替换int数组中重复数据的方法示例主要介绍了Java中替换int数组中重复数据的方法,涉及到Java针对数组的遍历、转换、判断等相关操作技巧。下面我们将详细介绍这些方法和技巧。 首先,Java中数组是一种基本的数据...

    05code-去掉数组中重复性的数据.html

    05code-去掉数组中重复性的数据.html

    JS 去掉数组中重复项

    本篇文章将深入探讨如何在JavaScript中去掉数组中的重复项,使数组中的每个元素都是唯一的。 首先,让我们通过一个简单的示例来理解问题所在。假设我们有一个数组`[1, 2, 2, 3, 4, 4, 5]`,我们希望去除其中的重复...

    C#验证数组元素是否重复

    然而,在处理数组时,一个常见的需求是检查数组中是否存在重复的元素,这对于数据校验、排序算法、去重操作等场景至关重要。 ### C#验证数组元素是否重复的知识点 #### 1. 数组的定义与初始化 在C#中,数组可以...

    删除定制整型数组中重复元素输出剩余元素

    总的来说,Java中删除整型数组重复元素的核心在于选择合适的数据结构(如HashSet)和适当的转换方法。通过这种方式,我们可以有效地处理数组中的重复值,提高数据处理的效率和准确性。对于初学者,掌握这些基础知识...

    一个数组去重的小程序

    这是一个简单的小程序,主要解决的是去除数组中的重复元素并输出去除重复元素并排序后的数组。

    删除数组内重复的数据

    然而,在某些情况下,我们可能希望去除数组中的重复元素,以确保每个值只出现一次。本篇将深入探讨如何在C++中实现这个功能,同时也会提及一些相关的工具和技术。 首先,我们需要了解C++中的数组。数组是由相同类型...

    JS求多个数组的重复数据

    该算法的效率取决于多个因素,包括数组的长度,数组中不重复数据的数量,以及重复数据在数组中的分布情况。如果数组中不重复的数据项非常庞大,算法的效率可能会受到影响。因此,在处理大量数据时,考虑使用更高效的...

    清理数组中重复的数据和读取顺序文件到数组.txt

    函数 `ClearArray` 的作用是清除传入数组 `A()` 中的重复数据,并将去重后的结果存放在数组 `B()` 中。该函数接收两个参数: - `A() As String`: 需要去重的原始字符串数组。 - `ByRef B() As String`: 去重后的结果...

    java删除数组或是集合中重复的数据

    java删除数组或是集合中重复的数据

    js 巧妙去除数组中的重复项

    在JavaScript编程中,处理数组并...总的来说,YUI源码中提供的这种方法是一种简洁且高效的去除数组重复项的技巧,特别适合处理大量数据。然而,在处理更复杂的数据结构时,开发者可能需要寻找其他适应性强的解决方案。

    易语言取数组中重复文本下标源码.7z

    在处理字符串数组时,我们可能需要找出其中相同的文本元素,这通常是为了去除重复数据、统计重复项或进行其他分析。易语言中没有内置的函数直接用于查找数组中重复的元素,因此需要自定义函数或者编写源码来实现这个...

    JS实现的数组去除重复数据算法小结

    在JS中经常会遇到去除数组中重复数据的需求,在此介绍四种算法以实现JS数组去重的功能. 1. 速度最快算法:对象键值对法 实现思路:新建一js对象以及新数组,遍历传入数组时,判断值是否为js对象的键,不是的话给对象...

Global site tag (gtag.js) - Google Analytics