关注
//用的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
相关推荐
点赞 评论 收藏
分享
点赞 评论 收藏
分享
查看22道真题和解析 点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 工作中出现了XX情况正常吗 #
2873次浏览 36人参与
# 公司福利里最没用的一项是啥 #
1509次浏览 39人参与
# 回顾今年你干过的最“勇”的一件事 #
2080次浏览 34人参与
# 一人推荐一个值得做的项目 #
1335次浏览 21人参与
# 工作前VS工作后,你的心态变化 #
1598次浏览 20人参与
# 高薪高压 vs 低薪wlb,你怎么选? #
2066次浏览 27人参与
# 毕业季,给职场新人一些建议 #
160844次浏览 2353人参与
# 如何用一句话描述你的职业 #
27526次浏览 176人参与
# 你被哪些公司挂了? #
106199次浏览 657人参与
# 说说你知道的学历厂 #
366730次浏览 1312人参与
# 机械校招之路总结 #
106439次浏览 2035人参与
# 找工作,行业重要还是岗位重要? #
83064次浏览 1665人参与
# 如果没找到工作,考公是你的退路吗 #
58063次浏览 434人参与
# 找工作如何保持松弛感? #
124333次浏览 1448人参与
# 牛友们的论文几号送审 #
61199次浏览 831人参与
# 如何准备秋招 #
67750次浏览 841人参与
# 你在职场上见过哪些“水货”同事 #
21503次浏览 150人参与
# 华勤技术工作体验 #
12167次浏览 23人参与
# 刚入职就____,这样正常吗? #
117749次浏览 657人参与
# 你怎么评价今年的春招? #
146746次浏览 1402人参与
