题解 | #明明的随机数#
明明的随机数
https://www.nowcoder.com/practice/3245215fffb84b7b81285493eae92ff0
1、空间换时间,提前定义数组空间大小
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); //空间换时间 int[] arr = new int[501]; int num = in.nextInt(); for(int i = 0; i < num; i++){ int a = in.nextInt(); arr[a] = 1; } for(int i = 0; i < 501; i++){ if(arr[i] == 1){ System.out.println(i); } } } }
2、使用现成的TreeSet 去重+有序
import java.util.Iterator; import java.util.Scanner; import java.util.TreeSet; // 注意类名必须为 Main, 不要有任何 package xxx 信息 public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); //得到数据量是多少 int num = in.nextInt(); //new一个treeset有序集合来保存所有的数据,去重+排序 TreeSet<Integer> set = new TreeSet<>(); while(in.hasNextInt()){ set.add(in.nextInt()); } //使用迭代器iterator来遍历整个有序结合 Iterator iterator = set.iterator(); while(iterator.hasNext()){ System.out.println(iterator.next()); } } }