Skip to content

Commit 2f982d3

Browse files
committed
๐Ÿ“ Docs: solved #237
1 parent 06e54c8 commit 2f982d3

File tree

1 file changed

+28
-0
lines changed

1 file changed

+28
-0
lines changed
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
/**
2+
* @param {number[]} nums
3+
* @param {number} k
4+
* @return {number[]}
5+
*/
6+
7+
/*
8+
* ์‹œ๊ฐ„ ๋ณต์žก๋„: O(n log n)
9+
* ๊ณต๊ฐ„ ๋ณต์žก๋„: O(n)
10+
*
11+
* 1. map ๊ตฌ์กฐ๋ฅผ ์‚ฌ์šฉํ•ด์„œ ๋ช‡๋ฒˆ ๋‚˜์™”๋Š”์ง€ ์นด์šดํŠธํ•œ๋‹ค.
12+
* 2. map ๊ตฌ์กฐ์—์„œ ๊ฐ€์žฅ ํฐ ์ˆ˜๋ฅผ ๊ตฌํ•œ๋‹ค.
13+
*/
14+
var topKFrequent = function(nums, k) {
15+
const map = new Map();
16+
17+
for (let i = 0; i < nums.length; i++) {
18+
if (!map.has(nums[i])) {
19+
map.set(nums[i], 1);
20+
} else {
21+
map.set(nums[i], map.get(nums[i]) + 1);
22+
}
23+
}
24+
25+
const result = [...map.entries()].sort((a, b) => b[1] - a[1]);
26+
27+
return result.slice(0, k).map((val) => val[0]);
28+
};

0 commit comments

Comments
ย (0)