🚀 neetcode.io/ - I created a FREE site to make interview prep a lot easier, hope it helps! ❤ I didn't mention this but using Python helped me a lot because you can write MUCH less code. I know most schools teach Java/C++, mine did as well, but i would highly recommend a language like Python/Javascript. Here's a short video highlighting the benefits of Python: th-cam.com/video/emNkJGwcusQ/w-d-xo.html
hello, I currently do my challenges in java because I am most comfortable, but I do know a little python. Would you think it would be easier to do these problems in python? and if so should i sharpen my python knowledge?
@@naodderibe4148 I do think it's worth learning python, because it doesn't take too long and makes questions easier. In the past I used C++, but switched to Python and it's well worth it. I have never used Python at any job, only for coding interviews and it's the best decision I ever made.
I have failed 3 final round of interviews at this point, I got back to my interviewers to ask for feedback: I am lacking stronger/faster and more efficient coding skills. I won't give up and I will do these lists, because before I was doing random Leetcode questions and that way I couldn't find the patterns everyone was talking about. For sure your spreadsheet will help me a lot, thank you!
@@jeremiahyoung4617 its a good list but honestly the top companies ask questions that are a bit harder, i did get lucky on a few rounds and got similar questions but for the most part these questions are just "part 1" and then the interviewers tackle on a bunch more constraints and make them harder and harder, which makes sense since they dont expect you to just memorize but its still VERY brutal.
@@ThisIsntmyrealnameGoogle That is very hard feelings when you memorized them all, I think people should just have passion about this because if they have then they will carefully learn how the code works... because I think we should understand that if we do not know the answer to the question then it means we are not that good yet, and we need to improve more. If these people are just memorizing things, it MIght mean that they do not have passion for programming and coding, they just want a JOB and MONEY straight away, and their life would be hell for particular time because of worrying and not happy about memorizing those job questions 😩
Great idea to create a document where you write the notes for each problem. I was essentially trying to do the same thing, but just from memory...which was silly, now that I think about it. Definitely gonna start using this tip, thanks!
Just went through the interviewing process and none of the companies were interested in anything to do with algorithms but how I wrote and structured my code or how I approached a problem/code request. They are after people who know how to do the job not provide perfectly refined and optimal algorithms. This was a relief for me as TH-cam would have you believe it's all about solving a random hard leet code example and completing it in 20 minutes and then optimising it on the spot.
not all can acquire such strong coding skill through interviews, you made it and more importantly you shared it to us, so a HUGE thank you for what you are doing!!!
This is so overwhelming, even for someone who just graduated with a CIS degree. When I look at your explanations of how you solved each problem I don’t understand a single word. I feel like I’ll never learn enough to pass and be good enough for an entry level position
I'm experienced and still struggling to get interviews 💀. Got laid off a couple months ago.. the market is tough to say the least 😮💨 Were you able to find anything?
@@NavJaswal I'm sorry to hear. yes; I agree and I also am experienced. I love algorithms but I feel this is too much and I'm glad to see I'm not the only one with these opinions. I'm sorry to hear of your lay off and hope you settled something. It makes it so much harder! Good luck.
I was so confused and did not know where to start for my preparation and understand most problems. Thanks to your channel on my search list. I found everything I need in one place! Great work! Keep it going!!
The fact that you keep track of the solutions in SS is super helpful - i may try this trick too! and thanks for making these videos, honestly the way you draw and explain things is top notch. you tube is full of people who are literally just regurgitating code answers without a lot of explanations.
I code my solutions in C++. But I follow your channel to understand the logic and translate the code from Python to C++. Your solutions are clear and concise enough to easily understand. I'm able to prepare consistently because of it. Thank you !
That notes thing helps a lot to remember core patterns in questions and how to approach. It helped me massively to improve my logic. I mainly do handwritten notes since I find reading from copies better than looking at a screen.
I've been working as a backend and frontend engineer for the last 7 years of my life, but the majority of the tasks was so trivial and pure maintenance that I'm not able to solve, in a reasonable amount of time and with a decent optimised algorithm, even the "easy" problems. And this is really frustrating and tells a lot about choosing a company to work with and knowing when it's time to change
I’ve been backend for 10 years and I don’t know anyone that solves these kinds of problems outside of interviews. Everyone needs to study for interviews because technical interviews are nothing like day to day work. In fact, in most contexts, if a dev is solving some tricky algorithm at work, they’re doing something wrong. There’s likely a well established library for it and hand rolling it will just make the code less maintainable and more error prone.
@yak to be fair majority of algorithms only show their use when companies need to handle enormous amounts of information which is really unnecessary at 99% of companies. Even large companies like FAANGS or large banks would be pretty optimised at this point. The only time this shines is in the rare case when a startup grows very fast into a massive company which is 0.01% of businesses
@@abz4852 ...then again, at work, I don't believe anyone is under this sort of time pressure to get some complex algorithm done perfectly. right, algorithms are fun; they find ways screw out the joy from them! :/
Yes, it is exactly what happens nowadays. People just learn how easy to break interview questions and get a job, but then we can observe tons of problems with software starting from a security and ending with understanding how software actually works. Hiring process should be seriously reconsidered.
As much as I dislike LeetCode style questions, I find that they at least allow anyone to have a chance. Imagine a recent graduate with limited experience looking for a job. If every company would forget about algorithmic and data structure questions and instead they would ask about their own specific requirements and technologies it would be nearly impossible for them to prepare for every possible company.
Yeap! I've been a professional coder for 10 years... Never used any algorithmic code EVER! It's niche exotic programming, for niche exotic coding jobs. Being able to write solid, well tested and easy to understand and maintain code, is vastly more important than being able to write fancy algorithms!!!
@@sdwone but that doesn’t get you a job is the thing 💀 I’ve seen people who are grade A with explaining and handling code but get screwed over by algorithmic questions
@@sdwone there’s also a difference between software engineers and computer scientists. Engineers use software that is already made by computer scientists to develop their product. Computer scientists work with very low level, high math and very efficient code. You write Python? Computer scientists write the interpreter and other technologies that makes python accessible. While I do believe that the current interview system can be cheesed, by cheesing it you’re actually understanding very basic computer science concepts.
I wish i found this video earlier. I failed the coding interview every single time about 1yr and half. i feel like i'm lost in my life as i could not find a proper job even tho i'm still 25. I will keep practicing with your videos and other study materials
Please keep going and never give up!!! I don't talk much about my personal life on this channel, but believe it or not i was in your same situation not too long ago. I promise, with enough hard work and patience, your success is GURANTEED!
Soon dude soon. It takes a single moment for success to come and all your failures become worth it. So just keep going and grinding! That moment is near.
maybe it is not just yours, 1.5 years it is huge, usually 2-3 months is enough to learn every single algorithm by heart with implementation, at least with pseudo code ...
Nowadays seeing the question in the interview before is more important than directly cracking your head into the problem which you haven't seen before. Thats why people who got selected generally would have solved 300+ questions on leetcode.
I encountered the word search II problem, I was not expecting it, attempted it while explaining myself, I got stalk inside the nested of statements. I got emotional and told the interviewer I’m done I don’t want to waste his time 😅, what that failure thought me is to never give up because I was close to solving.
00:02 Preparing for coding interviews without needing to be a genius. 00:48 Impact of a comprehensive list of coding interview questions 01:42 Dedicated list of 75 coding interview questions on LeetCode 02:32 Coding interviews require more than just memorization 03:18 Focus on understanding patterns instead of memorizing code details. 04:03 Memorize key patterns and tricks for coding problems 04:52 Utilize LeetCode Discuss for interview questions 05:40 Exploring specific company-focused data structures
3:30 The best teachers are the ones that can explain abstract concepts in simple terms. I will use your note template for writing notes on my code =]. Liked and subscribed!
Thanks for this video, very helpful. I would be in the camp of looking for common patterns. I think writing out the patterns in plain English and putting them in a spreadsheet is a great idea.
My first ever FAANG interview was back in 2017 and literally the first question I got asked was Word Search 2 and had maybe 20 minutes to work on it. Interviewer didn't give me any tips. Hard fail, wish I had crack then to pass it!
I'm sure you still probably had some sort of a takeaway from it and that's what matters. I hope you're doing better now. Are there any tips that you might know about to prepare for faang?
1. Would you say putting down notes as comment in the code solutions is as equivalently effective as putting it in a spread sheet? Cos That is where I put my notes. 2. What's the further usage can this notes be for? I felt it's something I wrote down when I truly understood the problem. But for improving the ability to solve more question and quicker, how would you recommend to leverage it to achieve that goal?
90 precent of interviews they never asked that, because they don't use DS or algorithms. Mostly was OOP, Design pattern, rest API and programming language things.
I used to follow the same trick for Maths problem in my school and engineering. I kind of remembered the patterns and one or two tricks of a particular type of problem. I always used to score above 90% throughout my career. Right now I am an Software engineer for last 4 years , but probably can't write find the odd even number in one go 😢.
I’m a very average coder. But I always try to break down the problem in words, and reason about the process before I try writing any code at all. I might not know the exact code to write, but my reasoning and approaches are usually very close
One thing you can also do is after completing a problem you can see code ranked by memory space and speed. Check out the high results for both, and don't just take the first one but look through them as there is usually a very streamlined approach that handles it while also being very readable. On several of those problems where I resorted to array lists or sets, simple array manipulation was used and was very well thought out.
Still learning the basics of python and want to learn C# and Unity, so thank you for this video and spreadsheet resources! Hopefully by next year I'll be competent at coding and will be closer to becoming a programmer!
me right now is learning fundamentals of C# and then when i feel that the time is ready then i will ask them to buy me a new 2nd computer because I will transfer to my next goal which is to learn Unity and Blender... I am hoping on that time, coding is easy because at least I already learned some things of C# as wide as possible. *My first and only computer right now is a laptop that was bought in 2013, with intel celeron b830 1.8GHz 2 cores and it just costs 300 dollars which is very cheap = slow performance, so expect that it's really laggy/impossible if I use unity to practice. If this year later in 2022 I could have a computer it will be my 2nd computer in my whole existence(aside to smartphone)... but of course i will only ask them to buy me depends on my performance if I feel good and feel ready at programming then i will want to buy new computer so that i can continue to my next goal but in case i feel my knowledge is too weak, then i can assume my new computer would be in 2023 haha*
folks, keep in mind that 99% of the jobs out there will never ask you these sort of questions. I haven't seen any ever, in nearly 30 years. On the job, I've only had to deal with recursion and depth-first traversals - and that tends to be beyond what most of the other devs understand.
Have you applied to junior jobs? They ask this all the damn time. You apply for a junior backend role, they don't ask you to create a backend project , oh no never that, they ask for algorithms. Same goes for every junior job. On the job, you are correct 100% but applying for the job most of the jobs will ask you these type of questions as part of the application process.
@@angelicking2890 where are you applying? FAANG? The other 99.99% don't.. every city has local coding jobs. I have hired at nearly every job I have had - I have never asked DSA questions, and have rarely encountered them myself during that time.
@@-Jason-L Not not FAANG, th.ese are local coding jobs , junior roles requiring me to go through many stages 5+ and 2 of them coding test - one live and one online. I can't showcase my projects even if it has the very skills that they desire unless I do well in algorithims. It's a joke. So many passionate skilled developers get thrown out the window because they are simply forced to get good at algorithims .
thanks for giving a direction to my prep strategy too. I currently work with a decent service based company and targeting to crack FAANGM by the end of this year. This video is really helpful. Thanks a lot
I took the Word Search II challenge to see how well I could do. I solved it in Java in about an hour and a half. It wasn't optimal by any means, it is horribly spaghetti code, and after thinking it over I found a few big optimizations. Would I be able to do this, first try, in 30 minutes with the stress of being in an interview? NOPE. For real, crackhead problem. 30 minutes??? I'm surprised I found a bs solution in an hour and a half. Something tells me the interviewers don't actually expect you to solve that kind of thing in that timeframe. They just want to see you at least *start* on a solution. Many people would look at that and pump out some nothing code to make it look like they could even fathomably come up with a solution given enough time, when in reality they might not be able to.
02:10 I think I know how to do this task, but doing it in 30 minutes is where I would fail without having done it before. I'm far from experienced coding, but I can fully conceptualize a way to solve it. Ironing out bugs and doing it in 30 minutes is the limit.
Are the colors just for indicating how hard the questions are? Also, how many of the problems did you do without looking at the solution? Do you think we should just study the solutions or don't look at the solution until we've solved it or a combination of both?
Of course you should solve first or at least try your best and if you're still stuck after let's say 30 min without getting any ideas, then look at the solution
IMHO you MUST understand the solutions, sure you can copy then solve it. After a while come back to the same problem and see if you can solve it on your own. If you just know the code by heart what's the point? It's very common for a solution to be slighly different in a coding interview and if you don't understand the subject you won't be able to solve it or apply it in the real world.
Algorithm questions are just a trick to filter out candidates according to your own implicit biases. How? Because the way you ask the question, word the question, and provide feedback during the interview are completely ignored factors that shape how an interview actually goes. Additionally, the content of these questions are completely irrelevant to actual day to day development work. The part that is supposed to be evaluated by these questions, is how effectively a candidate approaches problem solving. Unfortunately, objectively measuring that within the scope of a single interview, is difficult. Speed in an interview doesn't mean you found the best developer. You just found a good interviewer. Possibly someone who managed to memorize the right stuff for that specific round of interviews. The most reliable method of evaluating software engineers or any job applicant for that matter, is analyzing their track record. Sure, people can cheat on that, but you ask probing questions in the interview to verify how much they know about the work and accomplishments they claim. Unfortunately, that forces interviewers to do actual work.
I completely agree with you. I'm a pretty average/mediocre engineer, but I get many job offers because I can solve LC problems. It's definitely not fair, but at this point it's just the world we live in.
@@NeetCode I'm on the east coast, so for the most part I don't deal with this stuff. When I tried a Silicon Valley job I quickly found out that I wouldn't like it there anyway. Lucky for me, I can make more working contracting jobs near DC, I don't need FANG or their imitators.
Also i notice in python i get 48-64ms minimum, in C/C++ i get like 4ms-24ms minimum. A very large difference. Although memory may sometimes be more for C/C++if you dont free your memory
The thing about smoking crack and solving THE STUFF is true. I heard about one of my senior who could code and solve problems at mad speed when he was high
got asked "the crackhead problem" in an interview ... was able to think of a solution; however, was not able to code up the entire thing (since it was my first time attempting it ) ...
That's unlucky, but it sounds like you did pretty well to come up with a solution. If it was recent, I hope you get positive feedback. Good luck in future interviews!
You made a video before for "how to use LeetCode in 2020". So as I prepare for an Apple software interview, would I be better off trying those 75 problems, or would I be better off looking at the {companies-> Apple} questions from the "how to use LeetCode in 2020" list of LeetCode questions? There are so many resources and I'm kinda getting lost in the direction to go in
I just graduated this june, and man, I apply to about +10 jobs a day, and rarely any even send a message back. I was about to honestly give in and just get a part-time job, but you motivated me to start doing coding interview questions. I genuinely feel like I'm improving, and I really thank you for that.
Coding often feels like a super genius only club and mere mortals don’t have a chance lol. Thank you for not only showing us a practical solution but reminding us that even though it is challenging it is very possible for us to succeed ❤
The most impressive thing about this is you managed to show Blind without there being any racist or sexist questions in the "most read" tab on the right.
Any company that does these kinds of coding interviews is not somewhere you want to work. It shows they have no idea how to find real talent, so you’ll be working with people who just memorized a bunch of useless info to pass their tests. It’s so rare to use any of these algos much less more than a handful that it makes no sense to try and memorize dozens of them just in case. If you ever need one for a specific issue, you can look up the pros and cons of different algos or maybe there’s an objectively best one, then odds are there’s 100 implementations for it already in your language. If not, you can simply learn the algo and implement it. There’s just no need to waste time memorizing things you’ll probably never use when you could be using that time to learn productivity, organization, code and systems architecture concepts and a high level understanding of the most popular design patterns. Things that will actually help you as a developer rather than memorizing test answers that only test how much time you wasted memorizing test answers.
Got Placed during my campus placements and my joining is around December, so its time I should start upscaling myself to open more doors for myself in future
Your videos helped me tons with patterns. A couple of months ago I did about 90 problems on my own and reading through most efficient solutions gave me more headache than knowledge 😅Now I have both in equal quantities
I have been writing pictorial representation of approach on a white paper along with some simple english statements once I watch your videos and completely be able to code the solution. That helps to instantly revise some of the problems I solved long ago. Hope that helps others too.
Greetings! Could you please do a video for beginners on how to start coding? I love to code, but I have no idea where to start. Which language to prefer and How to start solving leetcode questions as a beginner.
My attempt at a solution without watching the whole video Read the table as a 2d array bounded by m and n provided Store the word list somehow (text file or something, probably would be faster to use a hashmap but i honestly have no idea how they work aside from it being like flextape for spaghetti code) Loop through all m, n locations in the 2d array and use these points as origins Feed origins into a function that attempts to create strings by going in all directions (is m-1 < 0? Then dont go left, otherwise take m and concatenate the next character, repeat with all characters) As these strings are being created, send that to another function which compares this to the word list If a match is found, save the string match, the origin, and the number of movements left/right/up/down (could be stored while interating) No idea how coding this would go but itd be something along the lines of many loops for all the strings generated along with the occasional conditions to stay in the array. Checking if the string matches the word list would just mean having to go through all the possible words so whatever sort is optimal there would be best but idk that hence the hashmap mention earlier lol Maybe im too tired but i dont think thered be too many issue implementing this, just that its quite a brute force approach to check literally every string possible. It could be optimized by seeing the minimum/maximum word length and making sure all string stay within those bounds but aside from that idk
Also should note if i remember how dictionaries work then maybe you could take the words as keys and have it return a boolean if its a word or not? Or at least see if you have a duplicate string but idk if that matters
Interviews center around algorithms etc ONLY in certain countries and ONLY certain industries. Going for FAANG? Sure. Other places? No. So I suggest applying for companies that have better interview processes instead grinding useless stuff
🚀 neetcode.io/ - I created a FREE site to make interview prep a lot easier, hope it helps! ❤
I didn't mention this but using Python helped me a lot because you can write MUCH less code. I know most schools teach Java/C++, mine did as well, but i would highly recommend a language like Python/Javascript.
Here's a short video highlighting the benefits of Python: th-cam.com/video/emNkJGwcusQ/w-d-xo.html
meanwhile im preparing to do my interview tomorrow in c 🥲
still confused if solving these in python will be worth it or not, i am a noob btw and i loved this video of yours, earned a sub
hello, I currently do my challenges in java because I am most comfortable, but I do know a little python. Would you think it would be easier to do these problems in python? and if so should i sharpen my python knowledge?
@@naodderibe4148 I do think it's worth learning python, because it doesn't take too long and makes questions easier. In the past I used C++, but switched to Python and it's well worth it. I have never used Python at any job, only for coding interviews and it's the best decision I ever made.
@@NeetCode Hey Neetcode, how many leetcode questions did you do and how many hours per day you were studying?
I didn’t know crack gave you the ability to solve very hard coding challenges. Might try some.
Crack does make a person good at problem solving, I dunno about the bug free part. But crackheads get mad creative.
well, that was a fucking lie, and do you have some? plz?
Crack is literally the best for coding.
He is in google
🤣🤣🤣
The spread sheet is such a great idea to compile thoughts and track what problems you need more practice with.
@123 123 it's linked in the description
I have failed 3 final round of interviews at this point, I got back to my interviewers to ask for feedback: I am lacking stronger/faster and more efficient coding skills. I won't give up and I will do these lists, because before I was doing random Leetcode questions and that way I couldn't find the patterns everyone was talking about. For sure your spreadsheet will help me a lot, thank you!
😯
So, how is it going now?
@@jeremiahyoung4617 he prolly gave up 🤣
@@jeremiahyoung4617 its a good list but honestly the top companies ask questions that are a bit harder, i did get lucky on a few rounds and got similar questions but for the most part these questions are just "part 1" and then the interviewers tackle on a bunch more constraints and make them harder and harder, which makes sense since they dont expect you to just memorize but its still VERY brutal.
@@ThisIsntmyrealnameGoogle That is very hard feelings when you memorized them all, I think people should just have passion about this because if they have then they will carefully learn how the code works... because I think we should understand that if we do not know the answer to the question then it means we are not that good yet, and we need to improve more. If these people are just memorizing things, it MIght mean that they do not have passion for programming and coding, they just want a JOB and MONEY straight away, and their life would be hell for particular time because of worrying and not happy about memorizing those job questions 😩
Great idea to create a document where you write the notes for each problem. I was essentially trying to do the same thing, but just from memory...which was silly, now that I think about it. Definitely gonna start using this tip, thanks!
You don't know how much I've been searching for a list like this! Thanks mate! Keep up the good work
Can you give now it is not showing
Just went through the interviewing process and none of the companies were interested in anything to do with algorithms but how I wrote and structured my code or how I approached a problem/code request. They are after people who know how to do the job not provide perfectly refined and optimal algorithms. This was a relief for me as TH-cam would have you believe it's all about solving a random hard leet code example and completing it in 20 minutes and then optimising it on the spot.
Did you get the job though? I'd like to know
not all can acquire such strong coding skill through interviews, you made it and more importantly you shared it to us, so a HUGE thank you for what you are doing!!!
Can you give me that spreadsheet link now it's is not showing
This is so overwhelming, even for someone who just graduated with a CIS degree. When I look at your explanations of how you solved each problem I don’t understand a single word. I feel like I’ll never learn enough to pass and be good enough for an entry level position
I'm experienced and still struggling to get interviews 💀. Got laid off a couple months ago.. the market is tough to say the least 😮💨
Were you able to find anything?
@@NavJaswal I'm sorry to hear. yes; I agree and I also am experienced. I love algorithms but I feel this is too much and I'm glad to see I'm not the only one with these opinions. I'm sorry to hear of your lay off and hope you settled something. It makes it so much harder! Good luck.
I was so confused and did not know where to start for my preparation and understand most problems. Thanks to your channel on my search list. I found everything I need in one place! Great work! Keep it going!!
Your voice is soothing to listen.
Thanks!
What?
He has a potential career in asmr.
The fact that you keep track of the solutions in SS is super helpful - i may try this trick too! and thanks for making these videos, honestly the way you draw and explain things is top notch. you tube is full of people who are literally just regurgitating code answers without a lot of explanations.
just saw you provided the link to the SS too, you're awesome :) if i ever get into FAANG, i owe you a dinner or drink or something
@@bujimagnai4138 u will one day bro, keep working hard
@@bujimagnai4138 how it going?
Thanks for the tips homeboy, once I get a Job At Microsoft the 🍻 are on me!
Sounds Good to me :)
Goodluck. Try other companies ad well. They're not that bad. 😊
@@NeetCode hey man thanks for the docs and 75 q, would have never heard about it.
I subbed obviously
You get that job yet? I'm getting thirsty over here.
Goodluck
I code my solutions in C++. But I follow your channel to understand the logic and translate the code from Python to C++. Your solutions are clear and concise enough to easily understand. I'm able to prepare consistently because of it. Thank you !
That notes thing helps a lot to remember core patterns in questions and how to approach. It helped me massively to improve my logic. I mainly do handwritten notes since I find reading from copies better than looking at a screen.
I've been working as a backend and frontend engineer for the last 7 years of my life, but the majority of the tasks was so trivial and pure maintenance that I'm not able to solve, in a reasonable amount of time and with a decent optimised algorithm, even the "easy" problems. And this is really frustrating and tells a lot about choosing a company to work with and knowing when it's time to change
I’ve been backend for 10 years and I don’t know anyone that solves these kinds of problems outside of interviews. Everyone needs to study for interviews because technical interviews are nothing like day to day work. In fact, in most contexts, if a dev is solving some tricky algorithm at work, they’re doing something wrong. There’s likely a well established library for it and hand rolling it will just make the code less maintainable and more error prone.
This is pretty normal and expected tbh.
@@_yakgreed, I never used anything remotely similar to these in my 3 years as a backend engineer
@yak to be fair majority of algorithms only show their use when companies need to handle enormous amounts of information which is really unnecessary at 99% of companies. Even large companies like FAANGS or large banks would be pretty optimised at this point.
The only time this shines is in the rare case when a startup grows very fast into a massive company which is 0.01% of businesses
@@abz4852 ...then again, at work, I don't believe anyone is under this sort of time pressure to get some complex algorithm done perfectly. right, algorithms are fun; they find ways screw out the joy from them! :/
This the spreadsheet I needed about solutions on blind 75, thank you
Happy it's helpful :)
Yes, it is exactly what happens nowadays. People just learn how easy to break interview questions and get a job, but then we can observe tons of problems with software starting from a security and ending with understanding how software actually works. Hiring process should be seriously reconsidered.
As much as I dislike LeetCode style questions, I find that they at least allow anyone to have a chance. Imagine a recent graduate with limited experience looking for a job. If every company would forget about algorithmic and data structure questions and instead they would ask about their own specific requirements and technologies it would be nearly impossible for them to prepare for every possible company.
@@DanielVazquez someone recommended there should be a highly accredited cert you just show that you have
Yeap! I've been a professional coder for 10 years... Never used any algorithmic code EVER! It's niche exotic programming, for niche exotic coding jobs. Being able to write solid, well tested and easy to understand and maintain code, is vastly more important than being able to write fancy algorithms!!!
@@sdwone but that doesn’t get you a job is the thing 💀 I’ve seen people who are grade A with explaining and handling code but get screwed over by algorithmic questions
@@sdwone there’s also a difference between software engineers and computer scientists. Engineers use software that is already made by computer scientists to develop their product. Computer scientists work with very low level, high math and very efficient code.
You write Python? Computer scientists write the interpreter and other technologies that makes python accessible.
While I do believe that the current interview system can be cheesed, by cheesing it you’re actually understanding very basic computer science concepts.
I wish i found this video earlier. I failed the coding interview every single time about 1yr and half.
i feel like i'm lost in my life as i could not find a proper job even tho i'm still 25.
I will keep practicing with your videos and other study materials
Please keep going and never give up!!! I don't talk much about my personal life on this channel, but believe it or not i was in your same situation not too long ago. I promise, with enough hard work and patience, your success is GURANTEED!
@@NeetCode Promise! never give up!
@@idevbrandon You got this. Go for glory!!
Soon dude soon. It takes a single moment for success to come and all your failures become worth it.
So just keep going and grinding! That moment is near.
maybe it is not just yours, 1.5 years it is huge, usually 2-3 months is enough to learn every single algorithm by heart with implementation, at least with pseudo code ...
Nowadays seeing the question in the interview before is more important than directly cracking your head into the problem which you haven't seen before. Thats why people who got selected generally would have solved 300+ questions on leetcode.
I encountered the word search II problem, I was not expecting it, attempted it while explaining myself, I got stalk inside the nested of statements. I got emotional and told the interviewer I’m done I don’t want to waste his time 😅, what that failure thought me is to never give up because I was close to solving.
00:02 Preparing for coding interviews without needing to be a genius.
00:48 Impact of a comprehensive list of coding interview questions
01:42 Dedicated list of 75 coding interview questions on LeetCode
02:32 Coding interviews require more than just memorization
03:18 Focus on understanding patterns instead of memorizing code details.
04:03 Memorize key patterns and tricks for coding problems
04:52 Utilize LeetCode Discuss for interview questions
05:40 Exploring specific company-focused data structures
3:30 The best teachers are the ones that can explain abstract concepts in simple terms. I will use your note template for writing notes on my code =]. Liked and subscribed!
This is the excellent suggestion ....I have keep on practising code but never thought of keeping track of it.
Thanks, It's my first month to DSA and LC - I find this very helpful.
I just wanted to thank you for the work you're doing. We do appreciate it. Spreadsheet and Pattern Recognition part is when I had my "ah ha" moment.
Thanks for this video, very helpful. I would be in the camp of looking for common patterns. I think writing out the patterns in plain English and putting them in a spreadsheet is a great idea.
Thank God your video was in my TH-cam suggestions. Thanks a million times!🙏🙏
My first ever FAANG interview was back in 2017 and literally the first question I got asked was Word Search 2 and had maybe 20 minutes to work on it. Interviewer didn't give me any tips. Hard fail, wish I had crack then to pass it!
I'm sure you still probably had some sort of a takeaway from it and that's what matters. I hope you're doing better now. Are there any tips that you might know about to prepare for faang?
What is crack?
1. Would you say putting down notes as comment in the code solutions is as equivalently effective as putting it in a spread sheet? Cos That is where I put my notes.
2. What's the further usage can this notes be for? I felt it's something I wrote down when I truly understood the problem. But for improving the ability to solve more question and quicker, how would you recommend to leverage it to achieve that goal?
Anyone watching this video after 2 years?🙋♂️
I am watching it after 3 years!
Same here! watching after 3 years
same!
Following this channel from 3 months I guess,,got to say this is the best
90 precent of interviews they never asked that, because they don't use DS or algorithms. Mostly was OOP, Design pattern, rest API and programming language things.
I used to follow the same trick for Maths problem in my school and engineering. I kind of remembered the patterns and one or two tricks of a particular type of problem. I always used to score above 90% throughout my career. Right now I am an Software engineer for last 4 years , but probably can't write find the odd even number in one go 😢.
best DSA videos on earth . u are a genius bro . Thanks .
Genius is the one who perfects the art by using experience in practice and repeat it over and over!
I'm wasn't planning to code and only wrote short scripts in the past but now I'm itching to learn more. Sounds like this would be a good start 🙂
I’m a very average coder. But I always try to break down the problem in words, and reason about the process before I try writing any code at all. I might not know the exact code to write, but my reasoning and approaches are usually very close
One thing you can also do is after completing a problem you can see code ranked by memory space and speed. Check out the high results for both, and don't just take the first one but look through them as there is usually a very streamlined approach that handles it while also being very readable. On several of those problems where I resorted to array lists or sets, simple array manipulation was used and was very well thought out.
Awesome work!! Making interview preparation even simple.
This video is super helpful! I'm just starting my leetcode journey and am excited and nervous :)
Still learning the basics of python and want to learn C# and Unity, so thank you for this video and spreadsheet resources!
Hopefully by next year I'll be competent at coding and will be closer to becoming a programmer!
me right now is learning fundamentals of C# and then when i feel that the time is ready then i will ask them to buy me a new 2nd computer because I will transfer to my next goal which is to learn Unity and Blender... I am hoping on that time, coding is easy because at least I already learned some things of C# as wide as possible.
*My first and only computer right now is a laptop that was bought in 2013, with intel celeron b830 1.8GHz 2 cores and it just costs 300 dollars which is very cheap = slow performance, so expect that it's really laggy/impossible if I use unity to practice. If this year later in 2022 I could have a computer it will be my 2nd computer in my whole existence(aside to smartphone)... but of course i will only ask them to buy me depends on my performance if I feel good and feel ready at programming then i will want to buy new computer so that i can continue to my next goal but in case i feel my knowledge is too weak, then i can assume my new computer would be in 2023 haha*
@@computer1889 lol did you just project your life on another dude?
@@computer1889 Thanks for your comment. It made me laugh a lot.
folks, keep in mind that 99% of the jobs out there will never ask you these sort of questions. I haven't seen any ever, in nearly 30 years. On the job, I've only had to deal with recursion and depth-first traversals - and that tends to be beyond what most of the other devs understand.
Have you applied to junior jobs? They ask this all the damn time. You apply for a junior backend role, they don't ask you to create a backend project , oh no never that, they ask for algorithms. Same goes for every junior job. On the job, you are correct 100% but applying for the job most of the jobs will ask you these type of questions as part of the application process.
@@angelicking2890 where are you applying? FAANG? The other 99.99% don't.. every city has local coding jobs. I have hired at nearly every job I have had - I have never asked DSA questions, and have rarely encountered them myself during that time.
@@-Jason-L Not not FAANG, th.ese are local coding jobs , junior roles requiring me to go through many stages 5+ and 2 of them coding test - one live and one online. I can't showcase my projects even if it has the very skills that they desire unless I do well in algorithims. It's a joke. So many passionate skilled developers get thrown out the window because they are simply forced to get good at algorithims .
major product companies with large salaries and stock options tend to ask these questions
I was asked bst, tree and graph in most product based companies
ty bro this helps so many people and their careers!
thanks for giving a direction to my prep strategy too. I currently work with a decent service based company and targeting to crack FAANGM by the end of this year. This video is really helpful. Thanks a lot
All the best. Could we connect? I would like to ask you some things
@@gautamisane3240 Sure
@@gautamisane3240 let me know where would you like to connect.
Thanks. Linkedin is fine. I'll send you connection request!
How’s it going?
I took the Word Search II challenge to see how well I could do. I solved it in Java in about an hour and a half. It wasn't optimal by any means, it is horribly spaghetti code, and after thinking it over I found a few big optimizations. Would I be able to do this, first try, in 30 minutes with the stress of being in an interview? NOPE.
For real, crackhead problem. 30 minutes??? I'm surprised I found a bs solution in an hour and a half. Something tells me the interviewers don't actually expect you to solve that kind of thing in that timeframe. They just want to see you at least *start* on a solution. Many people would look at that and pump out some nothing code to make it look like they could even fathomably come up with a solution given enough time, when in reality they might not be able to.
They do. Interviewing is getting much harder as people have more prep material.
I got asked a leetcode hard problem during a phone screen.
@@moneymaker7307 what location was the company based in?
@@aysh1321 it was Uber
I really like your channel, you rock on both sharing how you learn and what you have been learning
02:10 I think I know how to do this task, but doing it in 30 minutes is where I would fail without having done it before. I'm far from experienced coding, but I can fully conceptualize a way to solve it. Ironing out bugs and doing it in 30 minutes is the limit.
That's a shame :)
I felt the same way but I managed to write my code in 35 minutes
Wow, this is awesome. Thanks for all the hard work! I'm definitely going to incorporate this into my preperations.
I must say now, i have found gold mine while surfing through videos suggestions on TH-cam...
Thanks man, keep the good work on...
This is actually great advice, subbed my man.
This is so amazing and helpful, thank you so much!
Are the colors just for indicating how hard the questions are? Also, how many of the problems did you do without looking at the solution? Do you think we should just study the solutions or don't look at the solution until we've solved it or a combination of both?
Of course you should solve first or at least try your best and if you're still stuck after let's say 30 min without getting any ideas, then look at the solution
IMHO you MUST understand the solutions, sure you can copy then solve it. After a while come back to the same problem and see if you can solve it on your own. If you just know the code by heart what's the point? It's very common for a solution to be slighly different in a coding interview and if you don't understand the subject you won't be able to solve it or apply it in the real world.
that excel sheet is life-changing!!! thanks a lot man
I'm new to Algorithm and Data structure and I think this is a good start thanks
Wow! Your instruction is the same as what i'm doing right now
it's really cool
Thanks for sharing the cheat sheet! First time hearing the 75. Very helpful pointer for me.
Algorithm questions are just a trick to filter out candidates according to your own implicit biases.
How? Because the way you ask the question, word the question, and provide feedback during the interview are completely ignored factors that shape how an interview actually goes.
Additionally, the content of these questions are completely irrelevant to actual day to day development work.
The part that is supposed to be evaluated by these questions, is how effectively a candidate approaches problem solving. Unfortunately, objectively measuring that within the scope of a single interview, is difficult. Speed in an interview doesn't mean you found the best developer. You just found a good interviewer. Possibly someone who managed to memorize the right stuff for that specific round of interviews.
The most reliable method of evaluating software engineers or any job applicant for that matter, is analyzing their track record. Sure, people can cheat on that, but you ask probing questions in the interview to verify how much they know about the work and accomplishments they claim. Unfortunately, that forces interviewers to do actual work.
I completely agree with you. I'm a pretty average/mediocre engineer, but I get many job offers because I can solve LC problems. It's definitely not fair, but at this point it's just the world we live in.
@@NeetCode I'm on the east coast, so for the most part I don't deal with this stuff. When I tried a Silicon Valley job I quickly found out that I wouldn't like it there anyway. Lucky for me, I can make more working contracting jobs near DC, I don't need FANG or their imitators.
Thank you so much for everything you are doing, you helped me a lot with 75 problems for the leetcode. keep it up
Do you know how the difficulty of algorithm questions in machine learning engineer interviews compares to that of SWE interviews in general?
For the programming part of ME it is similar to SWE.
Thanks for this trick review! Thank you so much!
I just started doing leetcode questions will do those 75 problems. I am currently doing questions in C/C++ and Python.
Also i notice in python i get 48-64ms minimum, in C/C++ i get like 4ms-24ms minimum. A very large difference. Although memory may sometimes be more for C/C++if you dont free your memory
The thing about smoking crack and solving THE STUFF is true. I heard about one of my senior who could code and solve problems at mad speed when he was high
lol maybe i should try it
That is true, don't know about smoking crack.. but in the college we called it as a "3 drinks Method" 😁
got asked "the crackhead problem" in an interview ... was able to think of a solution; however, was not able to code up the entire thing (since it was my first time attempting it ) ...
That's unlucky, but it sounds like you did pretty well to come up with a solution. If it was recent, I hope you get positive feedback. Good luck in future interviews!
Wow, thanks for sharing! I love the spreadsheet idea!!!
Glad to see you back
Hands down the best channel for learning how to solve Leetcode problems! cheers
I just love your work bro keep working hard
This is a very useful approach.
You made a video before for "how to use LeetCode in 2020". So as I prepare for an Apple software interview, would I be better off trying those 75 problems, or would I be better off looking at the {companies-> Apple} questions from the "how to use LeetCode in 2020" list of LeetCode questions? There are so many resources and I'm kinda getting lost in the direction to go in
I just graduated this june, and man, I apply to about +10 jobs a day, and rarely any even send a message back. I was about to honestly give in and just get a part-time job, but you motivated me to start doing coding interview questions. I genuinely feel like I'm improving, and I really thank you for that.
You graduated with a CS degree?
@@bangbang3690 nah, i basically got a UI/UX degree at UofW’s engineering dept. so it’s a related major at least
@@cliffy00what university is that? Wisconsin? Winnipeg? Something else?
@@cliffy00did u get a job
Coding often feels like a super genius only club and mere mortals don’t have a chance lol. Thank you for not only showing us a practical solution but reminding us that even though it is challenging it is very possible for us to succeed ❤
Loved the spreadsheet of solutions! That's a great idea.
This channel is blessing.
The most impressive thing about this is you managed to show Blind without there being any racist or sexist questions in the "most read" tab on the right.
Our prof for cs 2 always reminds us to practice on leetcode or coding bat during the weekend
I wish my CS professors told me that when I was a student lol
I never thought about the spreadsheet and it's such a great idea.
Any company that does these kinds of coding interviews is not somewhere you want to work.
It shows they have no idea how to find real talent, so you’ll be working with people who just memorized a bunch of useless info to pass their tests.
It’s so rare to use any of these algos much less more than a handful that it makes no sense to try and memorize dozens of them just in case.
If you ever need one for a specific issue, you can look up the pros and cons of different algos or maybe there’s an objectively best one, then odds are there’s 100 implementations for it already in your language.
If not, you can simply learn the algo and implement it.
There’s just no need to waste time memorizing things you’ll probably never use when you could be using that time to learn productivity, organization, code and systems architecture concepts and a high level understanding of the most popular design patterns.
Things that will actually help you as a developer rather than memorizing test answers that only test how much time you wasted memorizing test answers.
Does this means that after implementing these 75 problems we can tackle almost any problem in OA or interview? @NeetCode
No lol, you are far from that. Need to solve at least 300 leet code questions. These are just kind of part -1
I watched this twice. Thank you so much for sharing
This is the smart way to leet code.
I think I'm slowly figuring out what I need to do to succeed, and to do so efficiently in this broken interview game.
Please tell us ?
Got Placed during my campus placements and my joining is around December, so its time I should start upscaling myself to open more doors for myself in future
You deserve every like and subscribe you receive, great stuff!
Very good content. Thank you so much. I really like your suggestion of a high-level description of the solution.
Thank you for creating the spreadsheet, ;) Help appreciated.
Your videos helped me tons with patterns. A couple of months ago I did about 90 problems on my own and reading through most efficient solutions gave me more headache than knowledge 😅Now I have both in equal quantities
There should be an option to spam likes for how much a person is greatful for this video.😁
Word search II requires being familiar with dfs, tries and pruning. It's almost impossible to solve it without that knowledge
I have been writing pictorial representation of approach on a white paper along with some simple english statements once I watch your videos and completely be able to code the solution. That helps to instantly revise some of the problems I solved long ago. Hope that helps others too.
Greetings!
Could you please do a video for beginners on how to start coding? I love to code, but I have no idea where to start. Which language to prefer and How to start solving leetcode questions as a beginner.
My attempt at a solution without watching the whole video
Read the table as a 2d array bounded by m and n provided
Store the word list somehow (text file or something, probably would be faster to use a hashmap but i honestly have no idea how they work aside from it being like flextape for spaghetti code)
Loop through all m, n locations in the 2d array and use these points as origins
Feed origins into a function that attempts to create strings by going in all directions (is m-1 < 0? Then dont go left, otherwise take m and concatenate the next character, repeat with all characters)
As these strings are being created, send that to another function which compares this to the word list
If a match is found, save the string match, the origin, and the number of movements left/right/up/down (could be stored while interating)
No idea how coding this would go but itd be something along the lines of many loops for all the strings generated along with the occasional conditions to stay in the array. Checking if the string matches the word list would just mean having to go through all the possible words so whatever sort is optimal there would be best but idk that hence the hashmap mention earlier lol
Maybe im too tired but i dont think thered be too many issue implementing this, just that its quite a brute force approach to check literally every string possible. It could be optimized by seeing the minimum/maximum word length and making sure all string stay within those bounds but aside from that idk
Also should note if i remember how dictionaries work then maybe you could take the words as keys and have it return a boolean if its a word or not? Or at least see if you have a duplicate string but idk if that matters
Didn’t even know what Blind was before this vid . . .
Like the way he honestly say that others will not.
What did he say that other videos don't?
listening to you is like, some guy in same shoes as me, taking heart to heart
btw ,for the word search problem should i implement trie datastructure .
I thought I was the only one who took notes like this.
Some asshole actually gave me the Word Search II question as my FIRST problem for a react native interview. He didn't like how nice my resume was
I didn’t know people were trying to memorize entire blocks of code… how the hell were they gonna explain it as they coded?
Interviews center around algorithms etc ONLY in certain countries and ONLY certain industries. Going for FAANG? Sure. Other places? No. So I suggest applying for companies that have better interview processes instead grinding useless stuff