more paper 1 stuff Flashcards
How does a hash function contribute to the performance of a hash table
A hash function maps keys to indices in the hash table, ensuring even distribution of elements and efficient retrieval
Define an associative array and explain its relationship to dictionaries
An associative array is another term for a dictionary, where each key is associated with a value
Explain how a priority queue can be implemented using an array
A priority queue can be implemented using arrays where elements are sorted based on their priority levels, allowing efficient insertion and removal
Discuss the impact of hash collisions on the performance of a hash table
Hash collisions can degrade performance by increasing lookup time and necessitating collision resolution techniques like chaining or open addressing
Explain how dynamic arrays handle resizing when they run out of space.
Dynamic arrays resize by allocating a larger block of memory, copying existing elements, and deallocating the old memory block, ensuring efficient resizing.
Discuss the advantages and disadvantages of using a dictionary for key-value storage
ADV:
- Fast Lookup Time: Dictionaries offer constant-time (O(1)) average-case lookup time for retrieving values based on their keys.
- Flexible Key Types: Dictionaries allow keys to be of various types, including strings, integers, tuples
- Dynamic Resizing: Many dictionary implementations automatically resize themselves as more elements are added,
DISADV:
- Memory Overhead: Dictionaries can consume more memory compared to other data structures
- Hash collisions
-