ITC120-HashingAlgorithm-SourceCode
ITC120-HashingAlgorithm-SourceCode
ArrayList;
import java.util.LinkedList;
interface HashTable {
void insert(int key);
void display();
}
// Chaining
class ChainingHashTable implements HashTable {
private final ArrayList<LinkedList<Integer>> table;
private final int size;
System.out.println("Chaining:");
ChainingHashTable chainingTable = new ChainingHashTable(size);
for (int key : keys) chainingTable.insert(key);
chainingTable.display();
System.out.println("\nLinear Probing:");
LinearProbingHashTable linearTable = new
LinearProbingHashTable(size);
for (int key : keys) linearTable.insert(key);
linearTable.display();
System.out.println("\nQuadratic Probing:");
QuadraticProbingHashTable quadraticTable = new
QuadraticProbingHashTable(size);
for (int key : keys) quadraticTable.insert(key);
quadraticTable.display();
System.out.println("\nDouble Hashing:");
DoubleHashingHashTable doubleHashingTable = new
DoubleHashingHashTable(size);
for (int key : keys) doubleHashingTable.insert(key);
doubleHashingTable.display();
}
}