Middle
What is a hash table, how is it represented in Python, and what are its operation complexities?
sobes.tech AI
Answer from AI
A hash table is a data structure that stores key-value pairs and provides fast access to values by key in amortized O(1) time.
In Python, the hash table is implemented through the built-in data type dict. It uses a hash function to compute an index in an array where the value is stored.
Average operation complexities:
- Insertion: O(1)
- Search: O(1)
- Deletion: O(1)
In the worst case (with collisions), the complexity can degrade to O(n), but thanks to good hashing and dynamic resizing of the table, this rarely happens.
Example usage:
my_dict = {'apple': 1, 'banana': 2}
print(my_dict['apple']) # 1
my_dict['orange'] = 3