Skip to content

Commit 0e27667

Browse files
committed
Add a solution for top-k-frequent-elements
1 parent 0a3990a commit 0e27667

File tree

1 file changed

+15
-0
lines changed

1 file changed

+15
-0
lines changed
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
function topKFrequent(nums: number[], k: number): number[] {
2+
const mp: { [k: number]: number } = {};
3+
nums.forEach((n) => (typeof mp[n] === "number" ? mp[n]++ : (mp[n] = 1)));
4+
5+
const unq_nums = [...new Set(nums)];
6+
unq_nums.sort((a, b) => {
7+
if (mp[a] === mp[b]) {
8+
return 0;
9+
}
10+
11+
return mp[a] < mp[b] ? 1 : -1;
12+
});
13+
14+
return unq_nums.slice(0, k);
15+
}

0 commit comments

Comments
 (0)