import java.util.Arrays;
import java.util.HashSet;
import java.util.Set; class Demo20
{
public static void main(String[] args)
{
//int [] arr={1,2,3,3,4,4,4,4};
int [] arr={4,2,3,3,4,4,4,4};
//arr=delArr(arr);
arr=delArrByHash(arr);
//test(arr);
System.out.println(Arrays.toString(arr));
System.out.println("这个数组的长度是:"+arr.length);
System.out.println("这个是测试去除重复项!");
}
//数组去除重复项
public static int [] delArr(int [] arr)
{
if(arr.length<=1)
return arr;
int index=-1;
//先排序
for(int i=0;i<arr.length-1;i++)
{
index=-1;
for(int j=i+1;j<arr.length;j++)
{
if(arr[i]>arr[j])
{
index=j;
}
} if(index!=-1)
{
arr[i]=arr[i]^arr[index];
arr[index]=arr[i]^arr[index];
arr[i]=arr[i]^arr[index];
}
}
index=0;
for(int i=0;i<arr.length-1;i++)
{
if(arr[i]==arr[i+1])
index++; }
int[] arrOne=new int[arr.length-index]; index=0;
for(int i=0;i<arr.length-1;i++)
{
if(arr[i]!=arr[i+1])
{
arrOne[index]=arr[i];
index++;
}
}
arrOne[index]=arr[arr.length-1];//对最后一个数赋值 return arrOne;
} // hashSet.toArray(new int[0]); 这个查了好久,里面好像是String类型的
public static int[] delArrByHash(int [] arr)
{ Set<Integer> hashSet=new HashSet<Integer>();
for(int i=0;i<arr.length;i++)
{
hashSet.add(arr[i]);
}
int[] arrOne=new int[hashSet.size()]; Integer [] arrTow= hashSet.toArray(new Integer[0]); for(int i=0;i<arrTow.length;i++)
{
arrOne[i]=arrTow[i].intValue();
}
return arrOne;
} }
我乃新手,如有错误欢迎指点

java 去除重复项的更多相关文章

  1. [LeetCode] 80. Remove Duplicates from Sorted Array II 有序数组中去除重复项 II

    Given a sorted array nums, remove the duplicates in-place such that duplicates appeared at most twic ...

  2. [LeetCode] Remove Duplicates from Sorted Array 有序数组中去除重复项

    Given a sorted array, remove the duplicates in place such that each element appear only once and ret ...

  3. C#- 泛型去除重复项

    今天被这个问题纠结了好一会.如何去除重复项,我遇到的问题是,在判断是否重复的条件是有两个,一个信息来源,一个是信息标题. 最后使用了哈希后很好的解决,感觉挺高效的.代码贴下,做一个备忘 //防止群发, ...

  4. Excel2003 去除重复项

    利用 数据透视表 间接 获得 非重复项 1] 选中要去除重复项 的列 数据 2] 3]将选中列移动到 左侧 即可 4] 或者导入到Access中,用sql 语句中的 distinct SELECT D ...

  5. txt文本怎么去除重复项

    txt文本怎么去除重复项?做网络推广的朋友经常会遇到这样的问题,txt文本文件里面有许多人名或者电话号码用来发送邮件或者短信,通常有许多是重复的,下面我来介绍两个方法来去除重复项,以人名为范本讲解. ...

  6. [LeetCode] 26. Remove Duplicates from Sorted Array 有序数组中去除重复项

    Given a sorted array nums, remove the duplicates in-place such that each element appear only once an ...

  7. 为Array对象添加一个去除重复项的方法

    输入例子 [false, true, undefined, null, NaN, 0, 1, {}, {}, 'a', 'a', NaN].uniq() 输出例子 [false, true, unde ...

  8. 对Java数组中去除重复项程序分析

    我作为一个Java菜鸟,只会用简单的办法来处理这个问题.如果有大神看到,请略过,感激不尽! 所以首先先分析这道题目:数组中重复的数据进行删除,并且要让数组里的数据按原来的顺序排列,中间不能留空. 既然 ...

  9. LeetCode 83. Remove Duplicates from Sorted List (从有序链表中去除重复项)

    Given a sorted linked list, delete all duplicates such that each element appear only once. For examp ...

随机推荐

  1. sql 表名为关键字

    user在sql server中时一个关键字,如上面说所的,有时候我们无意中将其作为表的名称,当我们在sql语句中要使用该名称时例如:select *from user这是会提示user附近有语法错误 ...

  2. ios文件读取(二)

    - (void)viewDidLoad { [super viewDidLoad]; /** *  @brief 获取文件路径 * */ NSString * filePath = [self get ...

  3. 你真的了解:IIS连接数、IIS并发连接数、IIS最大并发工作线程数、应用程序池的队列长度、应用程序池的最大工作进程数 吗?

    原文链接:http://www.cnblogs.com/yinhaichao/p/4060209.html?utm_source=tuicool&utm_medium=referral 一般购 ...

  4. linux for循环

    一定要记得写后面的分号:http://www.runoob.com/linux/linux-shell-variable.html 这个页面的课程的循环教程是有问题的 for color in yel ...

  5. MySQL错误Another MySQL daemon already running with the same unix socket

    今天遇到RT这个问题后,导致数据库错误,然后在国外网站发现了一个解决方法,记录如下: 原因是:多个Mysql进程使用了同一个socket. 解决方法是:直接把mysql.sock文件改名即可.也可以删 ...

  6. otf VS ttf images

  7. Erlang中的图形化检测工具(4)

    这儿例举出若干个用于检视运行时系统的图形化工具,这些工具可以很好地帮助我们增进对系统的理解.借助这些工具,我们可以很好地以图形化方式观察进程.应用和监督层级. (1) Appmon.Appmon 是用 ...

  8. asp.net mvc4 eui datagrid视图重写分页

    效果图 前端代码: @{ Layout = null; } <!DOCTYPE html> <html> <head> <meta name="vi ...

  9. AFNetworking了解

    AFNetworking了解   AFNetworking是一个讨人喜欢的网络库,适用于iOS以及Mac OS X. 它构建于在NSURLConnection, NSOperation, 以及其他熟悉 ...

  10. windows phone中三种解析XML的方法

    需求如下, 项目需要将一段xml字符串中的信息提取出来 <?xml version=""1.0"" encoding=""UTF-8& ...