Search⌘ K
AI Features

Solution: Design HashSet

Explore the design of a custom HashSet class that uses a hash function for indexing and binary search trees to manage collisions through separate chaining. Understand how to implement add, remove, and contains methods to store and retrieve keys effectively within constrained storage. This lesson guides you through the step-by-step approach to building a scalable HashSet without relying on built-in hash table libraries.

Statement

Design a MyHashSet class without using any built-in hash table libraries and implement the following methods in it:

  • void add(key): Inserts the value key into the HashSet.

  • bool contains(key): Returns TRUE if the key exists in the HashSet, FALSE otherwise.

  • void remove(key): Removes the value key if it exists in the HashSet.

Constraints:

  • 00 \leq key 106\leq 10^6 ...