题目:三人行设计了一个灌水论坛。信息学院的学生都喜欢在上面交流灌水,传说在论坛上有一个“水王”,他不但喜欢发帖,还会回复其他ID发的每个帖子。坊间风闻该“水王”发帖数目超过了帖子数目的一半。 如果你有一张当前论坛的帖子(包括回帖)列表,其中帖子的作者的ID也在其中,你能快速的找到这个传说中的水王吗?
设计思想:
水王就是出现次数最多的,转化为求相同值的个数问题,就不难解决了,但是最快的方法找到水王还是没有完全的实现
程序代码:
public class main { public static void main(String args[]){ int ID[] = {1,3,2,4,3,1,3,3,4}; int b; b = waterwang(ID); System.out.println("水王是:"+b); } public static int waterwang (int[] array) { int[] count = new int[101]; for(int i = 0; i < array.length; i++) { count[array[i]]++; } int maxCount = count[0]; int maxNumber = 0; for(int i = 1; i < 100; i++) { if(count[i] > maxCount) maxCount = count[i]; } for(int i = 0; i < 100; i++) { if(count[i] == maxCount) maxNumber = i; } return maxNumber; } }
截图:
实验总结:我没有找到最快的方法来找到水王,只是能找到水王,这还需要提高。这个小程序对于思维上的锻炼还是不错的