三人行设计了一个灌水论坛。信息学院的学生都喜欢在上面交流灌水,传说在论坛上有一个“水王”,他不但喜欢发帖,还会回复其他ID发的每个帖子。坊间风闻该“水王”发帖数目超过了帖子数目的一半。
如果你有一张当前论坛的帖子(包括回帖)列表,其中帖子的作者的ID也在其中,你能快速的找到这个传说中的水王吗?
一开始的思路是建个文件,从文件中读取,分为三列,第一列是序号,第二列是发帖ID号,第三个是回复ID号,读取了之后分别存放在三个数组里,然后取第二个数组中ID出现次数的最大值为水王,但是尝试写了之后发现空指针异常,代码如下
package sb;import java.io.BufferedReader;import java.io.File;import java.io.FileNotFoundException;import java.io.FileReader;import java.io.IOException;public class Sb { public static void main(String args[]) throws IOException { String line = null; String sp[] = null; String snum[] = new String[100]; int temp = 0; int a[]=new int[100]; int c=1; int d=0; String b; File file = new File("Number.txt"); BufferedReader br = new BufferedReader(new FileReader(file)); while((line=br.readLine())!=null) { sp = line.split(" ");//按空格进行分割 for(int i=0;i
然后我把文件中的三列改成了一列,成功找出,但是并未实现查找回复ID中每个都存在水王的功能,代码如下
import java.io.BufferedReader;import java.io.File;import java.io.FileNotFoundException;import java.io.FileReader;import java.io.IOException;public class Sb { public static void main(String args[]) throws IOException { String line = null; String sp[] = null; String snum[] = new String[100]; int temp = 0; int a[]=new int[100]; int c=1; int d=0; File file = new File("Number.txt"); BufferedReader br = new BufferedReader(new FileReader(file)); while((line=br.readLine())!=null) { sp = line.split(" ");//按空格进行分割 for(int i=0;i