Assume google l4 phone screen in two months Starting point: - hate leetcode - not good at leetcode - haven’t touched leetcode in two years - not the brightest bulb in the box Baseline: Can handle LC medium although not as fast, around 40-90 min depending on the kind of question I run into. Currently revising relevant concepts from clrs. Sort + order statistics Structures: trees, heaps, hash tables Graph - dijkstra, mst, topological sort DP + greedy - extremely week at this. Will add the following unexplored “advanced topics”: - red black, b trees, van embed boa, segment trees - flow networks - Rabin karp, A* - Disjoint structures, union find etc Will pay extra attention to dp and back tracking. My question is around quality vs quantity. I think my approach previously was incorrect as I’d look up the solution a bit to impatiently. Because of that I wouldn’t learn to recognize the problem pattern. This time around I’m planning to not look at the the solution and spend more time trying to come up with the solution myself. If I get stuck on something for more than an hour, I’ll move on and try again the next day or towards the end of my LC session. What do you guys recommend I do. Any tips would be appreciated in the comments. Also if you go for quality, how big do you keep the time box, when’s the appropriate time to look up the solution? Also is two months even enough time for this kind of prep UPDATE: Did not do nearly the amount of prep I specified in the post. I’d look and peek solutions if I spent more than 20 minutes trying to figure it out. Did just the basic algos. Got very very lucky and HC approved at G and offer from meta. Both for E4/L4 #swe #interview #google
You absolutely need to get that time down from 40-90 to 10-20. Do the top 75 LC + top Google tagged(Quality) + repeat any questions you can't solve in under 20 mins (Quantity)
Yeah it’s touch and go. At my peak, I could do a medium under 20. Is the top 75 LC diff from blind 75?
This guy fucks
I'd say somewhere in between the 2 poll options. Give yourself 45 mins for each question and then peek at the hints on LC if you don't get the solution. I would aimlessly spend 4-5 hours on a single medium and while I got good at problem solving, I just wasn't able to cover enough topics by the time I had to take my interviews. 2 months is not enough time to focus on quality (assuming you have a full-time job)
Yeah I see your point. My strategy is to spend an hour or so and move on if I don’t have a solution and revisit it the next day. If I can’t solve it the next day, I’ll look up the solution
You applying for grindr?
None of those advanced topics is worth the time except for union find and segment tree. The interview really isnt that hard, esp for L4. The phone screen is harder than the onsite
Lol phone screen is harder, wtf
Yes. I got asked Tree question with heaps, followup was Dijkstra. On onsite, I was asked max subarray, some simple OOD problems, and a heap problem and got a high L4 offer. It was kind of insulting actually because I applied for senior and felt like I was being baby'd through the pipeline
Will add the following unexplored “advanced topics”: - red black, b trees, van embed boa, segment trees - flow networks - Rabin karp, A* - Disjoint structures, union find etc Is this even needed
Maybe not all of them but from the questions I’ve seen so far, rabin karp, a*, segment trees and disjoint structures might prove useful. There’s some support for some of these echoed in the comments too. The rest I’ll probably just read up on here and there
Check out this post! "Which of these algorithms are actually needed for interviews? (Tech Industry)" https://us.teamblind.com/s/AOULszxk
You’ll need both quality and quantity cause that’s what youre competing against. Understand the why for each but gotta do a ton regardless
The poll is misleading because actually you have to do both the things you mentioned. Take the first 50-60% of the time you have till the interview to do quality over quantity, and the remaining 40-50% time to go quantity over quality. At that point it’s okay to be impatient and look at solution BUT it should not happen often, and you absolutely have to go back to questions you looked up solutions to and redo them yourself to make sure it’s learnt
I intentionally didn’t include that option because that’s kind of a no brainer. I wanted to see the split between two polar approaches and comments about optimizing for both in a time box.
Still, the answer is not one or the other. For sys design it’s quality but for LC it has to be both
Keep grinding man. I am a regular leetcoder and did 800+ problems. I had a google on-site which I failed but in one of the rounds I was asked a ridiculously tough problem which is somewhat similar to a LC question (rectangle area 2) basically a O(N^4) brute force which can be improved with line sweep to O(N^2logN) which was my solution Few months after the interview I found the rectangle area question and there is a segment tree based approach which is O(NlogN) Anyway, my point is the more you practice, the better for you, you can see a lot of patterns. Don’t waste 2 months. Good luck
Thanks man. So you’d recommend the quantity approach? My only thing is, I’ve been through that phase after college, where I was doing lc 12 hours a day. Still couldn’t crack google. I feel like with google, the fundamentals need to be extra strong with a tinge of creativity. Quantity would certainly help if those patterns are burned onto my brain
Also wtf is a line sweep