Hi Blind community, I’m starting my interview prep and was wondering if I should start by reading books and understanding fundamental Data structures and Algorithms and then doing LC? Or if I should just jump into LC grind? What do you think? I work on Embedded so I have not used any fancy data structures and its been 4 years since I took a data structures class. #leetcode #Algorithms
do 100 LC easy/med, then get Jeff Erickson - Algorithms (google it)
Not answering whether books or LC but. You need both theory and practice. For example you may not encounter exact merge sort ever in a problem but you will definitely use its techniques.
neither is sufficient. go do a bunch of interviews that's best prep/guide
Start with CTCI. It has basic theory of the data structures and also has detailed explanations for the questions. Once you do the basics from there, move to Leetcode and start with easy questions. When you feel comfortable, move to medium level and do a mix of easy and medium. Finally do some hards based on the company for which you will be interviewing. Se questions are pretty famous so make sure you do those also. On Leetcode, always check the top answers in submission. You will learn new ways for the same question and also learn about complexities. Sometimes there is a pattern and you can solve many questions with one pattern.
Leetcode while talking out loud (practicing thinking out loud & justifying decisions based on CS concepts for tech interviews), use textbooks/source material online to fact check & brush up on stuff you forgot or learn something you don’t know. Sounds like you don’t have a firm grasp of what you already know & what might come up on tech interviews, so Youtube videos of specific company tech interviews might help understand each company’s process, but it all trickles down to Leetcode + cultural aspects for most tech interviews, especially for Amazon. There’s only so much an interviewer can evaluate in 1 hour (or even 1 day), so you’ll notice that a lot of places lean on LC questions with some variations that are up to the creativity of the interviewer.
Layoffs
Yesterday
9645
Google CFO confirms "large-scale" layoffs today (Apr 17)
Tech Industry
Yesterday
1540
TC progression. Estimated to hit $1M+ this year. AMA
Tech Industry
Yesterday
1776
What is the appeal to NVIDIA?
2024 Presidential Election
Yesterday
1527
If you vote for Biden this year, don't complain about layoffs
Tech Industry
Yesterday
9314
Goog Employees Arrested
This question is basically asking, how do I learn? Like how should we know how you learn. I know what works for me, and what works for me probably wouldn’t work for you. There’s so much advice already out there, just start doing stuff and stick with what works for you. Some metrics to see if things are working for you is speed at which you can fully solve questions you have never seen before. And if you want to break it down further, speed at which you can identify the right data structure/ algorithm to use for the optimal solution, and you can break it down however much you want from that.
I actually started doing LC but found that many problems require that you know some algorithm or data structure, so that’s why I am asking here, but anyways thanks for your input
That’s a good start, I’d actually recommend rereading your data structures book and redoing your data structure assignments. That knowledge should still be within your head somewhere and retracing your steps is an excellent way to dig it out again. If you want a one stop shop book before doing LC, I recommend Skienna , Algorithm Design Manual. I think the leetcode discuss section and the solution page can replace what cracking the coding interview and elements of programming interview offer.