// File: htest.C // // Testing the HashTable class for collisions #include #include #include #include #include "hash.h" main(int argc, char *argv[]) { int size, reps, i, r1, r2, r3, key ; long seed ; HashTable *Hptr ; if (argc != 4) { cerr << "Usage: htest size reps seed" << endl ; exit(1) ; } r1 = sscanf(argv[1], "%d", &size) ; r2 = sscanf(argv[2], "%d", &reps) ; r3 = sscanf(argv[3], "%ld", &seed) ; // long if (r1+r2+r3 < 3) { cerr << "Use integer arguments!" << endl ; exit(1) ; } cout << "size = " << size << ", reps = " << reps << ", seed = " << seed << endl ; Hptr = new HashTable(size) ; srand48(seed) ; for (i = 0 ; i < reps ; i++) { key = lrand48() ; Hptr->insert(key) ; } // Comment out for large tables ! // Hptr->dump() ; Hptr->stats() ; delete Hptr ; }