Skip to content

Conversation

@kashenafi
Copy link

@kashenafi kashenafi commented Jul 1, 2021

Hash Table Practice

Congratulations! You're submitting your assignment!

Comprehension Questions

Question Answer
Why is a good Hash Function Important? Minimizes collisions which keeps the look-up time short.
How can you judge if a hash function is good or not? It should be consistent, map different keys to different values, execute in O(1) time, appear random.
Is there a perfect hash function? If so what is it? No--any hash function could create collisions. The hope is to minimize them.
Describe a strategy to handle collisions in a hash table Chaining: storing multiple elements in a single bucket as a linked list.
Describe a situation where a hash table wouldn't be as useful as a binary search tree When you need to keep elements sorted.
What is one thing that is more clear to you on hash tables now I can explain more ways of dealing with collisions.

Copy link

@CheezItMan CheezItMan left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice work Kal, you did hit the main learning goals here, although no time/space prediction for top_k_frequent_elements.

Comment on lines +3 to 6
# Time Complexity: O(n log n)
# Space Complexity: O(n)

def grouped_anagrams(strings)

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍

Comment on lines 23 to 27
# This method will return the k most common elements
# in the case of a tie it will select the first occuring element.
# Time Complexity: ?
# Space Complexity: ?
def top_k_frequent_elements(list, k)

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍 No guesses on time/space complexity?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants