package doublehashing;
/**
*
Title:
* Description:
* Copyright: Copyright (c) 2002
* Company:
* @author unascribed
* @version 1.0
*/
public class DoubleHashing {
public static
void main(String[] args) {
int [] x = { 16, 20, 33, 97, 22, 21, 32, 66, 78, 101, 40 } ;
HashTable ht = new HashTable(4) ; // size 16
for ( int i=0; i30 ) ) k = HASH_TABLE_SIZE ;
hashTableSize = 1<(hashTableSize-2) ) return ;
// ASSERT at least 2 open spots in hash table
int hv = hashValue(o) ;
int shv = secondaryHashValue(o) ;
while ( hashTable[hv] != null ) {
hv = (hv+shv) % hashTableSize ;
}
hashTable[hv] = o ;
elementsHashed++ ;
}
void printHashTable() {
System.out.println("\nHash Table:") ;
for ( int i=0; i