public ArrayList<Integer> GetLeastNumbers_Solution(int[] input, int k){ Arrays.sort(input); ArrayList<Integer> list = new ArrayList<>(); if (k > input.length) { return list; } for (int i = 0; i < k; i++) { list.add(input[i]); } return list; }
public ArrayList<Integer> GetLeastNumbers_Solution(int[] input, int k){ ArrayList<Integer> list = new ArrayList<>(); if (k > input.length || k <= 0) { return list; } TreeSet<Integer> set = new TreeSet<>(); for (int i = 0; i < input.length; i++) { if (set.size() < k) { set.add(input[i]); } else { if (set.last() > input[i]) { set.remove(set.last()); set.add(input[i]); } } } for (Integer i : set) { list.add(i); } return list; }