Problem#
給你一個整數陣列 nums
和整數 k
,要你回傳前 k
多出現次數的數字,回傳任意順序即可
follow-up: 請實作時間複雜度在 $O(n\log{n})$
- 測資限制:
- $1 \le N \le 10^5$ (
N=nums.size()
) - $-10^4 \le N[i] \le 10^4$
- $1 \le k \le N$
- $1 \le N \le 10^5$ (
想法#
統計每個數字出現的次數,接著以 (出現次數, 數字)
去降序排列,接著只要拿前 k
個即可。
- 時間複雜度: $\mathcal{O}(n\log{n})$
- 空間複雜度: $\mathcal{O}(n)$