2
public List<String> topKFrequent(String[] words, int k) {3
Map<String, Integer> map = new LinkedHashMap<>();4
for (String word : words) map.put(word, map.getOrDefault(word, 0) + 1);5
PriorityQueue<Pair<String, Integer>> queue =7
new Comparator<Pair<String, Integer>>() {9
public int compare(Pair<String, Integer> a, Pair<String, Integer> b) {10
if (a.getValue() != b.getValue()) return b.getValue() - a.getValue();11
return a.getKey().compareTo(b.getKey());16
queue.add(new Pair(key, val));18
List<String> list = new ArrayList<>();20
list.add(queue.poll().getKey());