数组的去重与排序
来源:互联网 发布:淘宝怎么卖二手东西 编辑:程序博客网 时间:2024/04/28 01:26
做在线编程题遇到一道题,发现有比较好的实现思路,就记录下来了。
题目描述
给定N个1-1000之间的数字,对于其中重复的数字只保留一个,其余的去除掉。
输入描述:
输入多行,先输入整数的个数,然后再输入相应的整数。
输出描述
返回多行处理后的结果。
例子
输入:
6122312351
输出:
151223
我的答案:
import java.util.ArrayList;import java.util.Arrays;import java.util.List;import java.util.Scanner;public class Main{ public static void main(String[] args) { Scanner scan = new Scanner(System.in); while(scan.hasNext()){ int count = scan.nextInt(); int[] ary = new int[count]; for(int i =0;i<count;i++){ ary[i]=scan.nextInt(); } boolean flag; List<Integer> result = new ArrayList<>(); for(int i =0;i<count;i++){ flag = false; for(int j =0;j<result.size();j++){ if(ary[i]==(result.get(j))){ flag=true; } } if(!flag){ result.add(ary[i]); } } Integer[] res= result.toArray(new Integer[result.size()]); Arrays.sort(res); for(int s :res){ System.out.println(s); } } }}
其他版本的答案:
1.采用set集合的:
import java.util.Scanner;import java.util.TreeSet;public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); while(sc.hasNext()){ int num = sc.nextInt(); TreeSet<Integer> set = new TreeSet<Integer>(); for(int i = 0 ; i < num ;i++){ int curr = sc.nextInt(); set.add(curr); } for(Integer i : set){ System.out.println(i); } } }}
2.桶排序
import java.util.Scanner;public class test01 { public static void main(String[] args) { Scanner scan = new Scanner(System.in); while(scan.hasNext()) { int n = scan.nextInt(); int[] a = new int[n]; for(int i = 0; i < n; i++) { a[i] = scan.nextInt(); } int[] c = qucong(a); for(int i = 0; i < 1000; i++) { if(c[i] == 1) { System.out.println(i); } } } } public static int[] qucong(int[] a) { int[] b = new int[1000]; for(int i = 0; i < 1000; i++) { b[i] = 0; } for(int i = 0; i < a.length; i++) { b[a[i]] = 1; } return b; }}
0 0
- 数组的去重与排序
- JS的数组去重与排序
- 数组去重与排序
- js数组去重与排序
- js数组重排序与数组去重
- 数组排序去重
- js数组的去重和排序
- [JavaScript笔记] 数组去重 与 数组随机排序
- 整理数组去重与数组排序等方法
- 去重与排序
- “去重”与“排序”
- 排序与去重
- 数组排序去重算法
- js数组排序去重
- 快速排序+数组去重
- 蓝桥杯 数组排序去重
- 数组排序及去重
- 数组对象自带的排序方法,数组去重
- 第九届省赛题 表达式求值
- iOS开发最简单的符号化.crash
- map/reduce
- C++第五次实验 项目2
- 关于tomcat的自动更新的配置
- 数组的去重与排序
- CentOs7.3安装机器学习环境
- IOS开发之HomeKit(一)
- Mac OS X NSStatusItem图标添加
- 2017年4月11日携程笔试题 拼图
- RIDE-快捷键
- JAVA并发CountDownLatch、CyclicBarrier、Semaphore
- SSH整合(XML)【理解】【应用】【重点】
- 翻转整数的二进制位