We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent b70d69e commit a0f2bc0Copy full SHA for a0f2bc0
solution/0347.Top K Frequent Elements/Solution2.java
@@ -0,0 +1,37 @@
1
+class Solution {
2
+
3
+ class Node {
4
+ int key;
5
+ int value;
6
7
+ public Node(int key, int value) {
8
+ this.key = key;
9
+ this.value = value;
10
+ }
11
12
13
+ public List<Integer> topKFrequent(int[] nums, int k) {
14
+ Map<Integer, Integer> map = new HashMap<>();
15
+ for (Integer num : nums) {
16
+ Integer count = map.get(num);
17
+ map.put(num, count == null ? 1 : count + 1);
18
19
20
+ PriorityQueue<Node> queue = new PriorityQueue<>(k, new Comparator<Node>() {
21
+ @Override
22
+ public int compare(Node o1, Node o2) {
23
+ return o2.value - o1.value;
24
25
+ });
26
27
+ for (Map.Entry<Integer, Integer> entry : map.entrySet()) {
28
+ queue.offer(new Node(entry.getKey(), entry.getValue()));
29
30
31
+ List<Integer> res = new ArrayList<>();
32
+ while (k-- > 0) {
33
+ res.add(queue.poll().key);
34
35
+ return res;
36
37
+}
AltStyle によって変換されたページ (->オリジナル) / アドレス: モード: デフォルト 音声ブラウザ ルビ付き 配色反転 文字拡大 モバイル
0 commit comments