🔥
Hash Table Separate Chaining →
Separate chaining is a collision-resolution technique for hash tables that attaches a collection (e.g., linked list or dynamic array) to each bucket to store multiple keys mapping to the same index; it relies on the hash table’s hashing and bucket array model and extends it by managing per-bucket chains to handle collisions while preserving average O(1) operations.
🔥
Hash Table Linear Probing →
Linear probing is an open-addressing collision resolution method for hash tables; it depends on the hash table model (hash function, array indexing, and load factor management) to probe sequential slots after collisions.
🔥
Hash Table Quadratic Probing →
Quadratic probing is an open-addressing collision-resolution technique within hash tables; it depends on the hash-table model (array-backed storage, hashing to indices, collision detection), and on managing load factor and rehashing, using a probe sequence of successive i^2 offsets to mitigate primary clustering.
🔥
Hash Table Double Hashing →
Double hashing is an open-addressing collision resolution technique for hash tables; it relies on core hash table mechanics (hashing keys to array indices, load factor management, and probing) and adds a second hash function to compute probe step sizes.
🔥
Open Addressing →
Open addressing is a collision-resolution strategy for hash tables that relies on the table's array indexing and hash function to probe for empty slots; it manages load factor and probe sequences instead of chaining, so it is defined within and depends on the hash table model.
🔥
Hash Table →
The introductory module relies on the core concept of hash tables—keys, hash functions, collision strategies, load factor, and resizing—to explain operations, performance, and use cases.
Efficient Data Structures →