The LeetCode Fallacy
Vložit
- čas přidán 18. 03. 2024
- 🚀 neetcode.io/ - A better way to prepare for coding interviews
Checkout my second Channel: / @neetcodeio
🧑💼 LinkedIn: / navdeep-singh-3aaa14161
📷 Instagram: / neetcodeio
🥷 Discord: / discord
🐦 Twitter: / neetcode1
🎵 TikTok: / neetcode.io
"Sappheiros - Fading" is under a Creative Commons license (CC BY 3.0) / / sappheiros
Music promoted by BreakingCopyright: • 'Fading' by @Sappheiro...
#coding #neetcode #python
Damn I almost forgot I even had this channel.
🌍 The Roadmap: neetcode.io/roadmap
✏ The practice page: neetcode.io/practice
🚀 My second YT channel: youtube.com/@NeetCodeIO
🔥 Pro neetcode.io/pro
what tool he using to draw like that? wacom?
does neetcode have Lua?
@@a55tech Paint 3D with a mouse
@@NeetCodeA mouse?! How is your drawing motion so fluid with a mouse? Or is it a trackpad :0
bringup more
You had me at the Naruto Chunin Exams reference
He had me "don't forget to like and subscribe"
He had me "Just improve your problem solving skills and you'll be able to pass every coding interviews."
Which episode is that? Would like to watch it
It is right in the beginning. According to google, episode 24. Since it's not that much, I'd recommend watch from the 1st episode. It is really fun!@@agamersdiary1622
I always think back at that when Im thinking of making ethical decisions contrary to my motto.... man our parents where right it does influence us😂
🥷 ✌️✌️💨💨
I am a farmer and will try memoizing instead of memorizing from now on 😅
farmers are smart
Mathematicians are in shambles
@@Mglunafh
Can confirm. Mathematician here, in complete shambles
@@Mglunafhas a student of applied maths and informatics I too am in complete shambles
Bro just get his point
I just learned how multiplication works from this video😂😂
"things they don't teach you in school" :D
@@juanmacias5922just community school things
Wait you just did? I feel bad for you and your school system.
Check out the Karatsuba Algorithm as well, it' even funnier
I was too shy to put this up😂
Thanks a lot for your effort.
I looked at your blind75 solutions and coded them along the way, I even used the debugger sometimes.
After 2 weeks (left time to ensure I dont write off of memory), I tried to solve the problem on my own. If I could figure out the patterns, it was a matter of 10 mins to code. Sure I had some edge case issues but now I am in much better shape.
Your videos explain the logic very well.
I used to feel very bad when I was doing this for the first time and couldnt see the solution right away. But as you said, this is the learning phase.
After finishing the 75 problems for the 2nd time I was able to solve others by applying the patterns. And got confidence along the way.
I am not interested in joining faangs, I study for my own knowledge and to become a better interviewer.
A tip for folks: the best time to prepare is when you are not looking for a job.
Blind75* . Well done, bro!
@@belphegor32 thx, I fixed it
TC?
Wow that's amazing man.
How much time did it take for you complete the blind 75 twice. How many hours you spent per day.
I'd like to know if we only do leetcode if we are aiming at FAANGs.
5 months ago, I couldn't solve any easy problems, but after 5 months of Neetcode, I can finally solve easy and medium problems by myself
Well done. Wow. What was your daily schedule like?
How do you not get bored?? How do you stay motivated
Discipline@@krox477
I still can't solve easy solutions without looking at solutions.
But with anything if you do not enjoy or at least show up to it almost everyday try to find something where you can
When I was training BJJ it was 4-5 times a week (some days were rough) but you still show up@@krox477
After 5 months bro declared me a farmer :)
Ironically, the majority of programmers can't solve those problems off the top of their head in the 15 - 45 minute time window under extreme pressure. Coding questions are fundamentally broken. You end up with people who memorize the top questions but have no idea about calculating time complexity or system architecture. They end up turning an API into 10 microservices even though their system only has to support 1000 users per hour.
ouch. i can feel that past experience of yours. i saw the same crazy microservices get-bankrupt-fast scheme
Now with serverless, those 10 microsservices became 100 nanosservices to "minimize costs" and there's unreadable, unmaintainable scripts all over the place taping everything together
@@yFortuna, the irony is it costs more in server time and man hours
How to learn efficiently is more important than how much you learned
How do you learn efficiently
Answer the question now?
Wrong. It should be both. Learn a lot and learn efficiently.
@@asagiai4965 but each person has a capacity.
@@zorzem3290im curious also
This is 100% true, at least in my life. My final exam for Data Structures and Algorithms I failed 2 coding problems, professor asked to hand write pseudo code, I tried, but it was a mess whether this was due to nervousness, or just not believing in myself, I honestly can't say. We were taking the exam 1 on 1 via Zoom call (this is 2020, covid). He took a long look at my solutions and plainly asked me how would I solve it, in plain english, so I told him, and he walked me through writing that out in a pseudo way. I knew how to solve it, I just needed him to ask me questions. So, TLDR, never doubt yourself, and IMO always learn how to solve a problem, intimately, no matter what. Even if it's simple, it's all building blocks and it continues for the rest of your life. Super long comment, but Thank you Neet, you've made a big difference in my life!
Damn i have my data structures and algo final exam this afternoon and i've just been studying for it by practicing enough problems so that i will have technically "seen" any type of problem that appear on the exam (this is how i've done well in every single exam my life).
That sounds like an awesome teacher, btw.
w professor
You had good professor
Example of why compsci CAN be flawed, and how good teaching bridges it.
FYI, if a farmer didn’t have great problem solving skills they would be bankrupt very quickly. They are not a group you should underestimate.
Not to mention calculating risks through various variables that are present like the weather and possible diseases. A farmer is a little bit of "know-it-all" kind of profession.
Survivor bias. The "developed" world hates farmers. Simple as.
@@grapesurgeon Wait, you think farming used to the easier in the past?
Lmao! 🤣
@@Ebani Farming was easier in terms of expectations. You were just expected to diligently work your field and not be lazy about it. Modern day, you're expected to use modern techniques and approach the problem of farming with some degree of scientific and engineering discipline.
You can still make a miscalculation in either environment and turn out a poor harvest. The difference is that in the past nearly every other farmer wasn't doing any better so you were still generally competitive, while today, you'd go bankrupt.
2 points you might be missing: while it is true that farming isn't easy(it actually is pretty hard), the barrier to entry to farming is a lot lower than it is for mathematics. How long do you think it will take for someone and what percentage of the population do you think will be somewhat productive as a farmer? I would say the vast majority of people will probably be somewhat competent in farming in a couple of years. Contrast that with mathematics, to be able to actually do anything useful with it, you need to study it from elementary school to high school (and that's being generous). Even then, the vast majority of people just end up "not getting it".
Secondly, I think you're underestimating how hard it is to do something so abstract like math. Have you ever seen the meme of some dude having difficulty doing fractions, but as soon as it's related to something like pizza and beer, it suddenly gets a lot easier? That's the same thing with farming and math. Farming is a very concrete task. You know what you want to do, you can see what you want to do, you can see it as you're doing it. Math is way more abstract. There isn't a way to check what you're doing is right unless you have a teacher or a calculator with you. And that's only arithmetic. I'm an engineer and the amount of engineers that get by without using math is astonishing to me. I'm one of the lucky few in my workplace that actually "gets it" and actually do end up using math for tasks. It's a surprisingly rare skill even amongst the "intelligent".
Thanks for putting some light on this. I'm working on turning my coding hobby into a career change, and I love trying to solve difficult problems (LC or otherwise) on my own. Sometimes I need a little reminder that my goal is learning, not just rediscovering the wheel. Gotta stay balanced.
Lots of companies just need help with basic shit. Good luck!
there are some wheels you will never be able to reinvent on your own.
@@sapientum08 inventing wheels is a great way to get a publication, but using wheels is a great way to get a job
Interviewing in tech has become a job in itself. And for live coding interviews you need to have memorized syntax and problem patterns so well that you have to make it look like you are seeing the problem for first time and act as if you are coming up with a solution on the spot. If you answer quickly then too bad 😆. Tech is mainstream now so whatever rules few prominent companies set the rest blindly follow. 10 years back, one would have attended different formats at diff companies a whiteboard interview at 1 company, a phone coding interview at another and in-person coding at some others.
I don't think it's necessarily true that you have to act like you're seeing it for the first time.
Even in interviews I've conducted or I've seen other people conduct, nobody is taken by surprise if you are familiar with an optimal solution.
The important bit is to be able to write correct and clearly understandable code. If you prematurely write an optimized algorithm whose solution you're not comfortable with, you're likely going to bomb the interview.
I don't think this is the correct way to think about this.
You don't need to memorize the syntax and pretend you are seeing it on the stop. I'm and interviwer and have completed something like 200 interviews in my career.
The biggest thing we are looking for is your thought process. Do you understand the problem deeply? Can you have a conversation about it? Are you stumbling around basic coding skills like writing a for loop... or does it come naturally to you? Does this person overcomplicate things to try to impress me?
life is so fucked when you need another job to find a job
If you solve the question too fast, the interviewer will come with another one. The goal is to keep you talking (pretty much as a hostage negotiation 🤔), not check if you solve the problem or not
reg the 101's of interviews and its purpose that few comments brought up - I get the basics and expectations of interviews since i have been a interviewer too. Some further thoughts 1. In a live interview, anyone who hasn't heavily practiced leetcoding will go though a process of assumptions and errors to come to a correct solution. without knowing the pattern, i'm not sure if a leetcode medium-hard can be written with a minimum complexity nlogn solution in 30-45 mins. 2. Most interviewers are too rigid and some even go on to infer negatively if you refer syntax ( ** syntax here doesn't necessarily mean how to write a for loop or looking up basic ds functions) - language specific details like default behaviour of an in-built methods or methods/arguments. If you have to remember such details on top of your head then it means as a developer you are not allocating enough space for higher complicated problems. Interviews are all about testing your understanding of cs concepts and not about how fast you can recollect some details that you can easily look up or learn with some effort.
I always thought people invented the algorithms to solve these problems on the fly before I learned that they were just applying what they had memorized and practiced many times before. The same is applicable for things like math olympiads, too.
Some of these algorithms took very smart people a very long time to prove and formalize. No one can come up with that in 30 mins
@@NihongoWakannai Definitely. Took me way too long to learn this, though.
@@NihongoWakannaiNo, it's intelligent people not "smart people" who made those algorithms.
Smart people used intelligent people algorithms to make money like Jeff Bezos who made Amazon. He studied computer science and he used his knowledge from school to make a book e-commerce website from using intelligent people program languages like html css js and ruby.
Naruto is a good example describing smart people. If you take Naruto vs Neji. It was about Intelligent vs smart. Neji was the a spoil intelligent kid who parents brainwashed him to think he was superior and smarter than anyone else because his parents was feeding him lessons and knowledge. Naruto grow up thriving into a world with no parents. But Naruto showed him his place where intelligent people aren't like smart people. Smart people find shortcuts to beat intelligent people.
@@sukapow bro I did not expect the business bro jeff bezos talk to switch into the weeb naruto talk, you really hit me with that mixup
@@sukapow Gotta give credit to the inventors though. Most of us don't wanna be the ones figuring out how algorithms are designed and proven to work, we just wanna use the tools to create whatever software that we want. It took these geniuses hundreds and thousands of hours of heavy thinking so that we can learn it within an hour or 2. So no one's "beating" each other, and I don't like how its gotta be a competition when the fact is, we wouldn't know about these things if it weren't for the intelligent.
Would appreciate if you do more of videos like this. They really help.
It’s insane how you really made something out of what you love doing the most. 🙏🏾💯
seriously love your videos, you are so good at explaining everything! I love your pro membership btw…you’ve saved me in coding interviews during this layoff period
After solving enough problem, a person would automatically skip that logical thinking part as the brain wouldve automatically memorised it due frequent usage of those concepts... That's why people say to grind daily
While this is true, the main reason you should grind daily is because because it normalizes the process which reduces (and mostly eliminates) anxiety.
That's not only memorization, it's building intution by familiarizing yourself with patterns
wish i can memorize that easily
Funny how this came when I needed it. Thanks NeetCode. People like you make this world easier for newcomers like me.
Generally when I can't get a problem and I have to look up a solution, I type up a pseudo-code of what I think I need to do and compare it to an actual result. If I atleast got the theory down and I am just missing a method or something, that is good, cause I was on the right track. If I was completely off then that is when I have to actively remind myself of what this stuff does cause I fundamentally messed up.
@@WORK-qw7vsp and c?
Yeah damn, amazing video. It’s one of those videos where the moment it’s said it’s like knowledge you’ve had all along, but you were the one to come along and help us rediscover it 😁
Thank you!
What an amazing start! I'm sure 99% didn't know why that multiplication worked, including me until today. :D Thanks for it.
You are damn right with the thing you described as an intersection of memorization and problem solving and not falling into extremes. This is exactly how they prepare kids for math olympiads or algorithmic contests. If you didn't attend one of those places, you can read interviews with people who scored top in those contests (look those up, they are extremely insightful) and sure, they will always tackle problems, usually giving them more time than an average person, but they won't go to the extreme to hang on it until they solve it. Which is the biggest mistake of people who try to prepare for those things on their own. You could tackle way more problems in the meantime and be more productive instead of headbanging a wall. And if you want to win those contests, you need to be first and foremost productive and on schedule. You can't do that effectively on your own. You need tutors, mentors to help you prod you just enough in the right direction. The tutor won't usually give you the answer straight away. But they know personally their pupils so they will just give you just enough hints for you to narrow down the discovery stage of the problem solving for you to go into the right direction saving you hours of low-productive work.
Took me too long to realise this, I used to think that all those top coders at codeforces were so great because they could come up with the solution of problems outta nowhere, until when I realised that a lot of it was just identifying the common patterns they've seen across multiple problems. Ofcourse there's problem solving as well but I thought only problem solving was required, I had no idea about identifying the common patterns, maybe if I did I'd atleast reach Candidate master level there
As a person who competed in high school olympiads and prepared purrely on their own. I can without a doubt say that your claim is not correct.
With the evolution of online resources it's quite easy to find interesting and challenging problems for yourself to efficiently improve and perform better in competitions.
Giving hints is often counterproductive and gives young students a false sense of knowledge. I've seen a lot of students performing "well" in lectures only because of being given hints and then "underperforming" at the actual competitions because of a lack of effort.
What people call "memorization" is simply the fact that once you have solved a large amout of problems, what becomes "easy" to you is probably "hard" for others.
Coming back to the faang interviews, problems asked at them are mostly straightforward, if it happens to not be a trully hard problem, the interviewer will probably guide you in the right direction. It's important to follow hints and communicate well.
polska😮
Fantastic video! Loved how you broke down the actual concept of problem solving in an easy-to-understand way :)
OMFG YOU JUST GAVE ME PURPOSE TO LIVE MY LIFE AGAIN
Frrrr, i was about to give up, not just coding but give up on life in general 🥲🥲
@@adib4361 Dude, are u ok? Please tc
Some problems doesn't have direct solution considering it's background. I met some some tasks (under String category) that had some insane solutions using prefix intersection counting which is no way deductible without proper background. So, yeah, strongly agree.
This is a good video. You teaching us how to turn a multiplication problem into an addition problem really breaks down how math isn't complicated unless you make it so.
This video is a game-changer! Problem-solving skills are key to acing coding interviews. Focus on core algorithms and pattern recognition. Great tips!
Yes, patterns are much more important than solutions themselves. I've gotten to the point where I can solve almost any easy problem I encounter and about half of the medium problems I encounter thanks to you.
But can you solve them in O(N) instead of O(N**2) or O(log N) instead of O(N)? The initial solution is easy, its the optimized algorithm that gets me every time...
@@archardor3392 for easys, yes. I feel like they're more a test of your DS knowledge than techniques. mediums and up are more technique focused
The idea of memorizing core things and identify use cases obviously extends to many other fields, constructing a math proof is the obvious one. Another is modern experimental techniques in sciences. Many ground breaking new techniques are usually extensions of a classic experiment that exists in your intro textbooks that most students ignore.
Spot on! The myth of learning by thinking and then solving seems deeply rooted within our culture. Learning is doing. Mastering is keeping at it. Thinking is, for the most part, done involuntarily by the brain, once it has the ingredients needed for the connections to slowly take place. It makes achievements sound a little less exciting, and our ideas of freedom and rationality somewhat less colorful, but it is how it is, and it works. Nice video! ❤
I tried for a job once, they gave me a single test to complete in a couple days
it was supposed to be to get a thing to move to another thing and then back, and the instructions were to not give it discrete instructions on how to do a given thing, so you couldnt just say "turn left, then walk 4 spaces, then right, then walk 2" etc etc.
I figured out a way to do it algorithmically where it figured out if it was capable of moving in any direction from its current position at each step and explored the area until it found the thing it wanted, and then explored until it found its way home (marked by a specific set of circumstances)
It worked beautifully, the pawn moved around pretty weird but it would do as tasked (get the object, return to home)
The company takes a week to get back to me and they say "we arent exactly sure what you did here."
and im like, well what did you expect from the test then?
and they basically explained that everyone just turns in a program that gives discrete instructions.
so i say well thats the basic rule of the test is to NOT do that..
and they were like "well but everyone does."
and im like "and you still hire them?"
and they say "well yeah we just want to see how hard they try."
and i refused to work for that company.
It really is good to probably to read a textbook or algos course before going hard on leetcode. I tried to learn straight by programming, and I did end up reinventing a few famous algos, which I guess was a learning experience but it consumed a lot of time. Some problems are borderline impossible if you don't know a lot of the fundamental CS algos.
Thanks for your resources. I appreciate it.
yeah, very good point, for too long I was on that green buble, and just tried to solve a problem with having no idea how to approach it.
Even when knowing how to approach it - there's plenty of work in an interesting problem (and most of the real-world ones)
Finally someone! Thank you!
Unfortunately, when I solve the next 10 problems, I forget the details of how I solved the previous 10. Yes, I remember what there was a pattern, but the problem is that each pattern often has several modifications, those very details that I forget and cannot reproduce again two weeks later.
I also noticed that if a solution is unintuitive for me, then even having analyzed and understood the solution, for my thinking it still remains unintuitive due to which neural links do not appear and my internal garbage collector removes it from memory ))
Repetition is the key
Keep going. It takes 6+ months or years
This is why I prefer to be able to rederive anything I'd need, because my memory is too unreliable to trust with memorization.
Repetition leads to boredom, which leads to loss of focus, which leads to forgetting.
Same. Memory is waaay to fickle. Repetition makes me feel like a cripple. But is ok, people with better hardware attention stack and neural DRAM can have the jobs. I'll be doing maintenance on their work for years.
Maybe you could try to write some sort of documentation exploring the theoretic part of it and if there would be more efficient solutions.
I have always felt that people with great memory are naturally more intelligent. Because they hold more data and are able to connect the relationships fasters and more intuitively than the rest of
This is shockingly grounded and reasonable advice for CZcams 😂
Thanks! I now understand more about the trick to tackle leetcode😮
8 month ago, I was afraid of taking the step to begin solving problem on leetcode. I was losing hope. Until i found your video that present your roadmap and neetcode. I started to follow the roadmap... Now i solved around 300 problems. Thanks not enough.
Re 3:05 transforming multiplication to an addition problem is called logarithms. From the tables 55 = e^4.007 and 32 = e^3.466. So, e^4.007*e^3.466 = e^7.473 an looking back at our tables e^7.433 = 1760 rounded to our 4 digit accuracy.
if you’re in top colleges, most people say this and they can actually pull it off. it’s hell.
Uploaded 1 day ago! Bro we needed you before openAI. It's still a helpful perspective I must say.
Thank you for the awesome video!
Thanks bro for such beautiful piece of content... From last to years I am banging my head against wall(you know what I mean) but can't solve questions on my own... Now some questions can be solved... Your intersection approach (in this video) is what I was desperately searching for. Thanks a lot a lot alot brother 😅😅
5:30 Starts getting good--provides order in which to learn algos
i feel like we are becoming like LLMs ourselves. just retrieving the answer from the knowledge base without actually having logics.
This is the year where I will finally master DSA I have been on and off with leet code for the past 2 years. But never a consistant effort I just fall off after 1 or 2 months. Only to start again at the beginning.
I no longer want to be disappointed in myself.
This will not be for interviews, this will not be for getting a better job.
I genuinly want to become better at programming and understand the craft.
Getting good at leetcode, i.e DSA questions will NOT make you a better programmer lol. You will almost never use anything you learnt from doing leetcode questions in your job. It's just a convenient way for companies to quickly test you. Being good at leetcode != Being a good programmer
You're just gonna give up again like the last 2 years.
If you want to get good at programming, then pick a project, and start working on it. If you get stumped anywhere, look up what stumped you and read until you understand what the results were trying to tell you. Do not copy and paste the snippets they give; read the text around the snippets so that you can translate the snippets from whatever language or framework they were originally written for into the language or framework that you initially chose to write in.
Your vids are really amazing man. Im just a beginner but your vids help me alot
Nice video ❤
It burst my motivation for keep going
It was very comforting to see the math example compared to algorithm
Thank you so much love your videos
Finally, someone convinced me that I'm not stupid for trying to solve medium/hard problems on LeetCode without looking at the solutions. I always tried to come up with solutions on my own without checking the walkthrough section. Sometimes I was able to find the answer, and sometimes I was not, which made me super disappointed. However, at the end of the day, there is nothing wrong with it. It's good to know.
Amazing content, thanks!
Yo, I really appreciate your content. What software do you use to draw out your intuition to each leetcode problem you go over?
100% correct.
what i hate is, the people who need to hear this are the ones who basically just won't believe you when you say it.
when students are trained from birth to fixate on "natural talent", they either give up altogether or they develop pathological methods for "learning" things like trying to memorize code line-for-line
that multiplication explenation was awesome.
brilliant analogy
Basically try not to make the model underfit by expecting to learn by thinking. Take the training data and learn. You'll feel dumb but remember you're getting better eventually. Eventually this will become a habit and you'll see patterns in problems you had no idea about at first.
Man this is it, thank you.
2:00 Seriously I didn't know the mechanics of why the method works, thanks for explaining
During my college i have always been the guy who felt guilty on seeing the solution. I got good at problem solving, but couldn't solve many medium-hard interview problems because they surely required some memorisation of a pattern, which i couldn't invent at the moment.
fantastic video!
my favorite video of all time, you saved me life
Thank you bro, really really thank you
As a farmer , I can say my problem solving abilities are better than those mathematicians
very informative and valuable
Hi Navdeep! I discovered your CZcams channel months ago and LOVE it. I started my coding tutorial channel last month and curious about the gadget you use for on-screen writing if you don't mind sharing!
great explanation
My strat was to try CF-1200 to 1400 without looking at the tags, and see the solution if I think my progress on the problem is negligible and I am stuck, then try to build why it was used. Initially some problems seemed magical, but randomly encountering similar patterns kind of reduces this feeling. I am stuck at 1700 CF, idk about Div-1. But to reach 1600+ I think this works fine. (required about 300 problems to reach there).
Very well put.
Not only that but the integral problem I’m seeing with LeetCode is its deviation from real-life programming (in relation to most of the tech field positions). Naturally improving at LeetCode also means improving as a programmer, but what’s interesting to see is how little it applies to the job market.
I realized this after completed a few dozens of problems. All them already had efficient solutions, and"my" solutions will not bet them (at least in efficiency). It's not because I'm not smart enough, but because all of them required different mindset, and different experience. I also notice that all efficient solutions of different problems was in invented by different people, doesn't it looks interesting?
To summarize, don't reinvent the wheel. Your goal is to learn how to ride it.
Mom wake up new Neetcode vid just dropped
NeetCode is probably one of the best resources for technical interview preparation.
I just got accepted to a Google Software Engineering Internship that starts this June, and I wouldn't have made it without your help.
I owe you a huge one, brother.
Cheers,
Tom
Do you have any advice? I have a OA due Monday, but I mainly use SQL in my current role. It's not an option, so I'm trying to pivot to Python,. It's been difficult learning so far, but I really want to do well. I figure they must have liked my background if i passed the screening and received the OA. But I really want to perform well. Life changing opportunity.
@@TDMac11 My OA was two leetcode style questions, and I was lucky enough to receive two that were not too hard. My assumption is that they are randomized from a dedicated set of questions with varying difficulty.
At this point they are checking mostly for correctness and not for efficiency. For one of the questions I submitted a suboptimal solution in O(n) even though there existed an O(1) solution, but it was correct so it passed. So one advice would be maybe don't jump over your head trying to over-optimize your solution. Write something that works, and then test the hell out of it with as many cases as you can think of. You may, of course, try to optimize your solution if you think there is room for that, but it might be a good idea to have something suboptimal as a backup.
Note that on the technical interview stages you will be evaluated by your ability to optimize your solutions so this tip is only for the OA.
For preparation I used the Neetcode roadmap and I think it was really good. If you have a lot of free then it might be a good idea to try to complete the entire thing (might take a while but totally worth it). If your free time is limited then I'd try to do 1-2 easy and 1-2 medium questions from as many topics in the roadmap as possible, preferably in the order they appear in the roadmap. If you have very little time then maybe focus on topics you find more challenging or are less familiar with. Important note - hard questions are not worth the time at this point.
Good luck my friend!
Great vid...and great shirt!
Best reference to target problem solving
Alright, I am entering the game, it’s over for you guys!
And the multiplication they taught us as kids is the absolutely the worst way to do it. It is tough to do it in your head. But then, teachers will always want to "see your work", so they choose this obtuse way to do it. I simply just factor the numbers in my head and recombine the primes to get to the answer. Or, I just whip out the calculator.
Leet Code is a joke. Most of them I can do very easily. The problem I have with Leet Code is that they are timed, which takes all the fun out. In the real world, you typically have a lot more time to solve problems than just a few minutes.
For instance, I had a multilateration problem to solve once, and I could not find any off the shelf solutions that worked. Most only involved 2 or 3 nodes. I had to solve it for many nodes detecting the BLE beacons that were to be used to track the location of pallets on the factory floor. Took me 2 or 3 days, but I did it.
Me, only plan to code for fun, am gifted in pattern recognition(all eggs one basket), am too disabled to work.
OP: It's just pattern recognition.
Me: I...wanna do a coding interview. Maybe I could get a job in the field once I get better at it.
Reason brain: No.
Me: B-but! He said the magic words! He said pattern recognition. That's my thing! That's my ONLY thing!
Reason brain: You have severe panic attacks and can barely English in interviews. This does you no good when you can't use it.
Me: ...😭
Wonderful video!
The cadence used to explain this concept is strangely stress-inducing. The delivery is exactly like an exasperated teacher trying to explain something they wish the class would just hurry up and understand it already.
I just had this same thought, and damn, Neetcode himself lays it down in a video.
Leetcode is not strictly an intelligence test, it's a memorization and pattern recognition test.
Hell, looking at modern machine learning algorithms (which are frickin' good at leetcode), perhaps that's all intelligence is?
I've been saying this since CP wasn't even main stream!
Given the set of all problems in existence, there will be many subsets that share a pattern of solution. Memorizing them will help tremendously your problem solving skills, because your head will be full of different ways things could get solved.
It is important to practice your problem solving before memorizing, but don't neglect the latter
i study in cse. but i don't learn anything from my college. our college has at most 30 students. but no one goes to college for class. so we don't even have a proper teacher in our college. so I learn everything myself. but when I started doing leetcode a month ago. i realized I need to learn math properly. so now I'm doing some youtube free course and reading some free pdf books. thank you for the tips.
thank you for this
Amazing video !
you are great dude
I was thinking leetcode is just partially understanding + some memorization before I opened this video and this guy said exactly what I had in mind❤ 4:19
Nice explanation
what software are you using for this presentation? (where you are writing stuff)
Neetcode with another life lesson :)
🎯 Key Takeaways for quick navigation:
[00:01] Why LeetCode Might Not Be All It's Cracked Up to Be
- LeetCode problems are not designed to teach you algorithms from scratch.
- The focus is on applying memorized solutions rather than understanding core concepts.
[00:27] LeetCode Interviews Compared to Long Multiplication
- LeetCode emphasizes rote memorization over critical thinking, similar to how long multiplication is often taught in schools.
- True understanding goes beyond memorizing steps.
[02:57] Breaking Down Complex Problems
- Complex problems can be solved by transforming them into simpler problems we already know how to solve.
- This is the foundation of problem-solving and what LeetCode should be teaching.
[03:12] Natural Aptitude Isn't Everything
- While a strong math background can be beneficial, problem-solving can be learned and improved.
[03:41] Finding the Balance Between Memorization and Problem-Solving
- LeetCode should be used strategically to learn core algorithms, not memorize solutions for every problem.
- The goal is to understand how to apply the right algorithms to different situations.
Made with HARPA AI
are there any built in functions (i.e. sort(), reverse()) that I can't use during interview? when the main purpose of the questions are not about sorting or reversing per se.
Well said.
Mesmerizing
A great thanks ❤🎉
Background music is a nice touch
Thanks!