Proved Google interviewer wrong and got rejected
After doing 500+ Leetcode problems and going over CLRS 3 times, finally I got rejected due to insufficient knowledge in algorithms and data structure, and not able to come up with expected answers after many hints. (Could be because I am an Indian female? My conversations with my interviewers were actually very polite)
Had a debate with an interviewer about part of my code, which he claimed not needed and error prone, but I proved him/her wrong at the end.
Had another debate with an interviewer about choices of data structure to use, couldn't convince him/her without throwing him a textbook.
Was being doubted about choices of algorithm to use, I didn't fight for it but still feedback is not expected answer.
I just want to tell my interviewers:
Yes, weighted quick union with path compression can lead to linear time complexity in practice! (Difficult proof though)
Yes, in graph traversal besides visited and unvisited flags there is this inprogress flag so a set or boolean flags might not be enough, not that I don't know what is a Hashset! (White/Black/Grey marks on textbook)
Yes, top-down dynamic programming could be faster than bottom-up dynamic programming in cases that not all subproblems need to be visited! (Bottom-up is not always optimal or you prove it to me)
Yes R-way Trie could be faster than Hashmap for string search/dedup because when the target string is not present Hashmap still iterates through all characters to get hash but Trie can terminate search early with sublinear time complexity! (Hashmap is linear to input string length)
If your interviewers are not like me spending all night every day studying algorithms and data structures, how could you reject me based on their words?
To whoever failed Google interview:
It's okay, it could be Google's loss.
To those who are spending a huge amount of time on Leetcode just for doing interviews:
The system is broken, but you are a hero doing things that need to be done.