Question:
Given a non-empty array of integers, return the k most frequent elements.
For example, Given [1,1,1,2,2,3] and k = 2, return [1,2].
Note: You may assume k is always valid, 1 ≤ k ≤ number of unique elements. Your algorithm's time complexity must be better than O(n log n), where n is the array's size.
Explanation
用了三种方法,桶排序,maxHeap以及TreeMap。主要是计算frequency,然后对frequency进行排序。