//用的linkedhashmap import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; import java.util.Iterator; import java.util.LinkedHashMap; import java.util.List; import java.util.Map; import java.util.Map.Entry; import java.util.Scanner; public class Main { public static void sort(int[] num){ LinkedHashMap<Integer, Integer> map=new LinkedHashMap<>(); for (int i = 0; i < num.length; i++) { if (map.containsKey(num[i])) { map.put(num[i], map.get(num[i])+1); } else { map.put(num[i], 1); } } List<Map.Entry<Integer, Integer>> list=new ArrayList<>(map.entrySet()); Collections.sort(list,new Comparator<Map.Entry<Integer, Integer>>() { public int compare(Entry<Integer, Integer>o1,Entry<Integer, Integer>o2){ return o2.getValue().compareTo(o1.getValue()); } }); List<Integer> list1=new ArrayList<>(); List<Integer> list2=new ArrayList<>(); for(Entry<Integer, Integer> mapp:list){ list1.add(mapp.getKey()); list2.add(mapp.getValue()); } int[] newnum=new int[num.length]; int j=0; int index=0; for (int i = 0; i < list2.size(); i++) { while(index<list2.get(i)){ newnum[j]=list1.get(i); j++; index++; } index=0; } for (int i = 0; i < newnum.length; i++) { System.out.println(newnum[i]); } } public static void main(String[] args) { int[] num={1,1,1,2,3,3,4}; sort(num); } }
点赞 1

相关推荐

11-28 17:58
门头沟学院 Java
美团 JAVA开发 n×15.5
牛客786276759号:百度现在晋升很难的 而且云这块的业务没美团好 你看百度股价都跌成啥样了
点赞 评论 收藏
分享
11-15 18:39
已编辑
西安交通大学 Java
全村最靓的仔仔:卧槽,佬啥bg呢,本也是西交么
点赞 评论 收藏
分享
牛客网
牛客企业服务