关注
//用的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
相关推荐
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 在大厂上班是一种什么样的体验 #
11841次浏览 150人参与
# 你的mentor是什么样的人? #
51051次浏览 720人参与
# 程序员找工作至少要刷多少题? #
20493次浏览 259人参与
# 我和mentor的爱恨情仇 #
106192次浏览 946人参与
# 论秋招对个人心气的改变 #
12776次浏览 174人参与
# 秋招落幕,你是He or Be #
54127次浏览 618人参与
# 机械人避雷的岗位/公司 #
43957次浏览 304人参与
# 校招第一份工作你干了多久? #
136608次浏览 597人参与
# 为了减少AI幻觉,你注入过哪些设定? #
5668次浏览 168人参与
# 设计人如何选offer #
189648次浏览 868人参与
# 你的秋招进行到哪一步了 #
2530489次浏览 23253人参与
# 机械人还在等华为开奖吗? #
312077次浏览 1582人参与
# 牛客AI体验站 #
7498次浏览 200人参与
# 秋招投递记录 #
380853次浏览 3203人参与
# 重来一次,我还会选择这个专业吗 #
411187次浏览 3898人参与
# 12306一秒售罄,你抢到回家的票了吗? #
2217次浏览 51人参与
# 职场上哪些行为很加分? #
322448次浏览 3599人参与
# 我现在比当时_,你想录用我吗 #
9220次浏览 122人参与
# 互联网公司评价 #
485831次浏览 4111人参与
# 一张图晒一下你的AI员工 #
5569次浏览 123人参与
