import java.util.*; import java.io.* ; public class Experiment { /* private static int hash(String s,int a){ int h = 7; for (int i=s.length()-1;i >= 0;i--) h = a*h + s.charAt(i); if (h < 0) h = h * -1; return h; } */ private static long hash(String s,int a){ long h = 7; for (int i=0;i "); String command = sc.next(); while (!command.equals("quit") && !command.equals("q")){ if (command.equals("help")) System.out.println(commands); if (command.equals("read")){ ArrayList S = new ArrayList(); ArrayList I = new ArrayList(); System.out.print(">> "); int [] N = new int [50000]; for (int i=0;i<50000;i++) N[i] = 0; String fname = sc.next(); Scanner scf = new Scanner(new File(fname)); long min = 99999999; long max = -1; while (scf.hasNext()){ s = scf.next(); System.out.println(s +" "+ hash(s,33) % 49891 +" "+ s.hashCode()); //S.add(s); //int i = (int)(Math.abs(51*hash(s,33) + 91) % 49891); int i = Math.abs((int)(hash(s,33) % 49891)); N[i]++; I.add(hash(s,33)); min = Math.min(hash(s,33),min); max = Math.max(hash(s,33),max); } long[] data = new long[I.size()]; for (int i=0;i 1) sum++; System.out.println(sum +" "+ min +" "+ max +" "+ collisions); } System.out.print("> "); command = sc.next(); } System.exit(0); } }