# 문제 설명
- swift sort가
O(nlogn)
인데 통과되는 이유가 뭘까? 문제 팁에는 O(nlogn)보다 성능 좋으라고 제시되어 있기는 함 - 딕셔너리로 빈도수 체크, 빈도수 크기별로 정렬 후에 k개만큼 뽑아오기
class Solution {
func topKFrequent(_ nums: [Int], _ k: Int) -> [Int] {
var result: [Int] = []
var freqs:[(Int, Int)] = []
var freq: [Int: Int] = [:]
for i in nums {
if let _ = freq[i] {
freq[i]! += 1
} else {
freq[i] = 1
}
}
for (key, value) in freq {
freqs.append((key, value))
}
result = freqs.sorted(by: { $0.1 < $1.1 }).reversed()[0..<k].map { $0.0 }
return result
}
}