java对一个int数组进行排序、去重
思路:
1、使用 HashSet 进行去重
2、将 HashSet 变为 TreeSet
3、使用 TreeSet 进行排序
4、将 Set 变为 Integer 数组
5、将 Integer 数组变为 int 数组
/**
 * @Author: DaleyZou
 * @Description:  对 candidates 数组进行排序、去重
 * @Date: Created in 10:43 2018-8-23
 * @Modified By:
 */
public class sortArray {
    public static void main(String[] args){
        /**
         思路:
         1、使用 HashSet 进行去重
         2、将 HashSet 变为 TreeSet
         3、使用 TreeSet 进行排序
         4、将 Set 变为 Integer 数组
         5、将 Integer 数组变为 int 数组
         */
        int[] candidates = {1,1,2,2,2,9,8,7,76,84,54,45}; // 初始化一个需要排序、去重的int数组
        HashSet<Integer> hashSet = new HashSet<Integer>(); // 去重
        for (int i = 0; i < candidates.length; i++){
            hashSet.add(candidates[i]);
        }
        Set<Integer> set = new TreeSet(hashSet);            // 利用TreeSet排序
        Integer[] integers = set.toArray(new Integer[]{});
        int[] result = new int[integers.length];            // 我们排序、去重后的结果数组
        for (int i = 0; i < integers.length; i++){
            result[i] = integers[i].intValue();
        }
        Arrays.stream(result).forEach(System.out::println); // 将结果数组输出
    }
}
												
											java对一个int数组进行排序、去重的更多相关文章
- Java -- 给定一个int数组,拼接出最大数值
		
public class ZhiJieTiaoDong { /* 给定一个数组:组合成最大数值 */ public String szpj(int[] args){ if(null == args | ...
 - Java实现产生一个int数组,长度为100,并向其中随机插入1-100,并且不能重复。
		
public static void main(String[] args){ //创建一个int数组,长度为100, int n = 100; int[] arrayInt = new int[n] ...
 - java中将一个字符数组赋值给另一个,两者同时变化
		
java中将一个字符数组赋值给另一个,两者的变化怎么是同步的?怎么才能让他们独立开? 比如有一个int[][] a 已经存在值,现在定义int[][] b=a;之后改变a的值,为何b也跟着改变?怎么才 ...
 - 产生一个int数组,长度为100,并向其中随机插入1-100,并且不能重复
		
产生一个int数组,长度为100,并向其中随机插入1-100,并且不能重复 用一个ArrayList存储1到100然后随机产生0到arraylist.size()之间的数字作为下标然后从arrayli ...
 - 一个int 数组,里面数据无任何限制,要求求出所有这样的数a[i],其左边的数都小于等于它,右边的数都大于等于它。能否只用一个额外数组和少量其它空间实现。
		
一个int数组, 比如 array[],里面数据无任何限制,要求求出 所有这样的数array[i],其左边的数都小于等于它,右边的数都大于等于它.能否只用一个额外数组和少量其它空间实现. 分析:这题很 ...
 - Java集合框架和数组的排序(转载)
		
Java集合框架(*Collection)*和数组的排序  根据约定,在使用java编程的时候应尽可能的使用现有的类库,当然你也可以自己编写一个排序的方法,或者框架,但是有几个人能写得比JDK里的还 ...
 - Android Studio NDK 学习之接受Java传入的Int数组
		
本博客是基于Android Studio 1.3 preview版本,且默认你已经安装了Android SDK, Android NDK. 用Android Studio新建一个工程叫AndroidJ ...
 - Android NDK 学习之接受Java传入的Int数组
		
本博客主要是在Ubuntu 下开发,且默认你已经安装了Eclipse,Android SDK, Android NDK, CDT插件. 在Eclipse中添加配置NDK,路径如下Eclipse-> ...
 - 请编程实现:产生一个int数组,长度为100,并向其中随机插入1-100,并且不能重复(百度了一下,get一种高性能算法,非递归)
		
网上找到一种更好的实现方式: (1)把N个数放到容器A(int数组)中. (2)从N个数中随机取出1个数放入容器B(int数组)中. (3)把容器A中最后一个数与随机抽取的数对调 或者 把容器A中最后 ...
 
随机推荐
- Host 'XXX' is not allowed to connect to this MySQL server解决方案
			
如何允许远程连接mysql数据库呢,操作如下: 首先登录账号 mysql -uroot -p 使用mysql用户 use mysql 如果报此类错:ERROR 1820 (HY000): You mu ...
 - (转)linux应用之test命令详细解析
			
linux应用之test命令详细解析 原文:https://www.cnblogs.com/tankblog/p/6160808.html test命令用法. 功能:检查文件和比较值 1)判断表达式 ...
 - java 数字进制之间转换
			
//10进制转换 16进制 System.out.println(Integer.toHexString(val)); System.out.println(String.format("% ...
 - HDU 4323——Magic Number——————【dp求编辑距离】2012——MUT——3
			
Magic Number Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Tota ...
 - ssh设置别名
			
通常我们在 Termianl 下用 ssh 链接远程主机的时候,每次都需要输入一长串的用户名加主机地址,是不是觉得很麻烦? 我们知道在 /etc/ssh/ 目录下通常都会有 ssh_config 和 ...
 - SpringBoot 使用fastjson
			
spring boot默认使用的json解析框架是jackson,替换为fastjson有两种方式 1.继承WebMvcConfigurerAdapter @SpringBootApplication ...
 - vue2.0 $router和$route的区别
			
在vue2.0里页面参数是 this.$route.query或者 this.$route.params 接收router-link传的参数. 在路由跳转的时候除了用router-link标签以外需要 ...
 - DIV内数据删除操作
			
对于数据操作,前端提供静态方法,交给后台去操作 此处记录一下,待优化,不过精华都在里面了 静态页面: 鼠标移上显示: html代码 css代码 js代码
 - css多行文本溢出显示省略号
			
HTML: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <met ...
 - powershell解决win10开始菜单和通知中心无法打开
			
然后通过 Ctrl + Shift + Esc 弹出任务管理器点击文件-->运行新任务 在打开的填写框里面输入 "powershell"同时勾选下方的"以管理员身份 ...