1.一个整数数组(百万级),找出重复次数最多的数。
2.按照重复次数从小到大排序,若重复次数相等,则按照数值从大到小排序。
解题思路:
1.使用一个HashMap<Integer,Integer>结构的数据类型来存放结果。在HashMap中,key用来存放重复次数最多的元素,value 用来存放该元素的重复次数。然后遍历HashMap结构即可获得结果。
2.HashMap或Map本身没有排序功能,若要进行较轻松的排序,可利用ArrayList中的sort方法。
package code;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.Comparator;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
public class FindMaxCountAndSort {
public static void main(String[] args) {
int[] arr = {
1,1,1,1,6,7,8