这一个这个会给出一个表的数据,其中包括了(帖子ID和用户ID)
这个其实也好找,老师和同学提出的是通过删除法进行找出水王,比较相近的两个数据如果ID相同则合并,不相同则删除,最后剩下的就是水王。这种方法也是遍历一遍
我的想法也是遍历一遍,通过map的key和value,将ID设为key,然后进行(value)++;最大的那个就是水王。
代码:
package test2; import java.util.ArrayList; import java.util.Collections; import java.util.HashMap; import java.util.List; import java.util.Map; public class test1 { public static void main(String[] args) { Map<String,Integer> map = new HashMap<String,Integer>(); String key1="01"; String key2="02"; String key3="03"; String key4="04"; //key1是海王,让他在数组中出现多次 String str[]= {key1,key2,key1,key3,key1,key4,key1}; int sta[]= {0,0,0,0,0,0,0}; for(int i=0;i<7;i++) { if(map.containsKey(str[i])==false) { map.put(str[i], 1); } else { Integer itg=map.get(str[i]); int num=itg.intValue()+1; map.put(str[i],num); } } int max = 0; String temp =""; int value=0; for(String key:map.keySet()){ value = map.get(key); if(max<value){ max = value; temp = key; } } System.out.println("max-value:"+max+" key:"+temp); } }
结果图: