LeetCode#p347-前k个高频元素
package HashTab;
import java.util.*;
public class p347 {
public int[] topKFrequent(int[] nums, int k) {
int res[]=new int[k];
if(nums==null||nums.length==0)return res;
HashMap<Integer,Integer>map=new HashMap<>();
for(int i=0;i<nums.length;i++){
map.put(nums[i], map.getOrDefault(nums[i],0)+1);
}
List<Integer>list=new ArrayList<>();
for(int key:map.keySet()){
list.add(key);
}
Collections.sort(list, new Comparator<Integer>() {
@Override
public int compare(Integer o1, Integer o2) {
return map.get(o2)-map.get(o1);
}
});
for(int i=0;i<k;i++){
res[i]=list.get(i);
}
return res;
}
}
运行结果:


浙公网安备 33010602011771号