java实现打印list中重复次数最多的前n个数据
来源:互联网 发布:多媒体软件的优缺点 编辑:程序博客网 时间:2024/05/16 15:01
如:list中有1,3,4,5,1,7,5,3,4,2,1,5,1……
当输入输入参数n为1时,打印1;当输入参数n为2时,打印1,5
public void printTopN(List<Integer> numbers,int n){ //先统计各个数据出现的次数 Map<Integer,Integer> countMap = new HashMap<Integer,Integer>(); for(int i = 0;i < numbers.size();i++){ int num = numbers.get(i); if(countMap.constainsKey(num)){ countMap.put(num,countMap.get(num) + 1); }else{ countMap.put(num,1); } } //将统计出来的map进行处理 Map<Integer,List<Integer>> resultMap = new HashMap<Integer,List<Integer>>(); List<Integer> tempList = new ArrayList<Integer>(); //用于记录出现次数 for(Entry entry: countMap.setEntry()){ int key = entry.getKey(); int value = entry.getValue(); if(resultMap.constainsKey(value){ List list = (List)resultMap.get(value); list.add(key); }else{ List<Ineteger> list = new ArrayList<Integer>(); list.add(key); resultMap.put(value,list); tempList.add(value); } } //对出现次数进行排序 ArrayList.sort(tempList); //输出结果(可能会输出多于n个),如果要只输出n个的话,使用下边方法 int p = 0; //记录打印次数 for(int i = tempList.size()-1; i >= 0 && p < n; i--) { List list = resultMap.get(templist.get(i)); for(int j = 0; j < list.size(); j++) { System.out.print(list.get(j) + ","); p++; } } //只输出n个 for(int i = tempList.size()-1; i >= 0; i--) { List list = resultMap.get(templist.get(i)); for(int j = 0; j < list.size() && p < n; j++) { System.out.print(list.get(j) + ","); p++; } }}
0 0
- java实现打印list中重复次数最多的前n个数据
- java实现打印list中重复次数最多的前n个数据
- 海量日志数据__怎么在海量数据中找出重复次数最多的一个;提取出某日访问网站次数最多的那个IP;提取出某日访问网站次数最多的前n个IP
- 海量数据选取重复次数最多的n个
- java 找出n个元素数组中重复次数最多的数(假设出现次数大于n/2)
- 上千万或上亿数据(有重复),统计其中出现次数最多的N个数据. C++实现
- java实现查找数组中重复次数最多的字符串
- 统计文本中单词出现次数,打印出现次数最多的前10个.文本大小30KB~300KB
- 找出数组中重复次数最多的元素并打印
- 找出数组中重复次数最多的元素并打印
- 找出数组中重复次数最多的元素并打印
- 海量数据中找出出现次数最多的前10个URL
- 找出一堆数里面出现次数最多或最多的前N个数字
- java实现:打印前n个质数
- 从海量数据中找出重复次数最多的一个
- Java找出一个字符串中重复最多字母的次数
- 用hash_map统计出现次数最多的前N个URL
- 数组中重复次数最多的元素
- java线程中的interrupt,isInterrupt,interrupted方法
- Tomcat设置输入域名直接访问项目
- 云计算360度
- Struts2 的环境搭建
- Jenkins 历险记
- java实现打印list中重复次数最多的前n个数据
- 去除集合中的重复元素
- 微信开发提示65318
- python 操纵 控制 windows 注册表
- 软件测试基础概念
- OGNL表达式struts2标签“%,#,$”
- Export file created by EXPORT:V10.01.00 via conventional path
- Android安全攻防战,反编译与混淆技术完全解析(下)
- 做自己