Top 6 Coding Interview Concepts (Data Structures & Algorithms)

แชร์
ฝัง
  • เผยแพร่เมื่อ 20 พ.ย. 2024

ความคิดเห็น • 186

  • @NeetCode
    @NeetCode  2 ปีที่แล้ว +51

    🚀 neetcode.io/ - I created a FREE site to make interview prep a lot easier, hope it helps! ❤

  • @shenzheng2116
    @shenzheng2116 2 ปีที่แล้ว +474

    1:21 - Heap
    3:17 - Sliding Window
    4:30 - Binary Search
    6:46 - DFS & BFS
    8:08 - Recursion
    9:16 - Hashmap

    • @mandeepvratesh5217
      @mandeepvratesh5217 2 ปีที่แล้ว +1

      Any recommended order while learning?

    • @chagsssss
      @chagsssss 2 ปีที่แล้ว +21

      Please try to avoid reveals like these in the comment section. What it does is, 1. reduces the average watch time for this video which impacts the creator, 2. the viewer misses the other important things said in the video apart from just the highlight.

    • @mk17173n
      @mk17173n 2 ปีที่แล้ว +71

      @@chagsssss If people really care about content they will watch it. This helps people avoid watching things thet may already know.

    • @AdobadoFantastico
      @AdobadoFantastico 2 ปีที่แล้ว

      thnx

    • @Aidan_Au
      @Aidan_Au 2 ปีที่แล้ว

      Thank you! Surprised that there's no Arrays....

  • @jasonswift7468
    @jasonswift7468 2 ปีที่แล้ว +7

    Number 6: Heap
    Number 5: Sliding Window
    Number 4: Binary Search
    Number 3: DFS & BFS
    Number 2: Recursion
    Number 1: Hashmap

  • @zero11010
    @zero11010 9 หลายเดือนก่อน +18

    I’ve had dynamic programming show up in interviews twice.
    Anecdotal. But, I also went to a school for engineers that just taught algorithms and how to handle behavioral questions, how to negotiate (this part paid for the course even if you ignore everything else), and how to build a resume.
    They taught dynamic programming specifically because it was being asked.
    If you understand recursion. And if you understand how to make a cache. Then you only need to learn how to recognize when a problem can be broken up into smaller sub problems to eliminate repetitive work.

    • @jitendrakumar-vv8ho
      @jitendrakumar-vv8ho 4 หลายเดือนก่อน

      don't you think processing alot of steps during recursion or dp might be difficult and if at any stage you get confusion it will be hard to understand i start dp and quit all the time as i get confused all the time

    • @arnv4487
      @arnv4487 หลายเดือนก่อน +1

      @@jitendrakumar-vv8ho DP is very difficult, but dont give up. Keep practicing, and focus not on coding but solving the problem on paper, or at least understanding how to solve it more

  • @theHootHoot
    @theHootHoot 2 ปีที่แล้ว +341

    This is a thank you message to Neetcode ✨
    I'm really glad I found your channel. I come from a non-CS background and I finally got into the 'FAANG' list, and a major contribution goes to you. I understood the whole concept of Trees and intervals only because of your videos buddy, thank you so much for all the work you've been doing 🖤
    (I know getting into FAANG may not be that great of an achievement for everyone out there, but coming from a background where you didn't have any exposure to tech, it's a huge deal for me)

    • @pelusemua8425
      @pelusemua8425 2 ปีที่แล้ว +14

      Wow! Congrats! Amazon?

    • @theHootHoot
      @theHootHoot 2 ปีที่แล้ว +13

      @@pelusemua8425 yeah lol
      Thanks :)

    • @NeetCode
      @NeetCode  2 ปีที่แล้ว +37

      That's great, congrats!!! Your hard work paid off!!🎉

    • @theHootHoot
      @theHootHoot 2 ปีที่แล้ว +4

      @@NeetCode thank you! Keep up the great work man

    • @silv3rbl4d3s1
      @silv3rbl4d3s1 2 ปีที่แล้ว +2

      Congrats! May I ask how long you've been doing leetcode for?

  • @william.darrigo
    @william.darrigo 2 ปีที่แล้ว +18

    this really helped get a broader picture on what I need to learn. I'm self-taught which makes it really difficult going through these interviews. Like what is recursion? I never used! But your channel has helped me learn so much, so thanks!

  • @zomgneedaname
    @zomgneedaname 2 ปีที่แล้ว +32

    This is a great list - having done a whole bunch of the blind 75 ones, I can definitely see that mastering the application of all of these here allows you to basically solve all common problems.
    Also dynamic programming is totally overrated cos in a real SWE job I can imagine the number of times you actually use it is like...0.01%, if ever.

  • @ricardocaballero6357
    @ricardocaballero6357 ปีที่แล้ว +1

    IMO if there is a better channel for coding interview prep it is not in this this world, this is IMO by far the best resource to prepare, everything well organized , excellent explanations and a lot more. Million thanks

  • @aresnemeia
    @aresnemeia 6 หลายเดือนก่อน +1

    I really recommend using whiteboard every time you make a technical challenge, specially in interviews, it shows you understood the problem and it makes you explain how you are designing the solution.
    It also (for example) helped me get the best solution in the 375 - Guess Number Higher or Lower just by drawing the problem.
    Never had a 0 milliseconds answer on a solution that I wrote on my own 😅

  • @minaFbeshay
    @minaFbeshay 2 ปีที่แล้ว +2

    I totally agree with you! Those are the most frequent topics that show up in the coding interviews.

  • @utkarshdewan8736
    @utkarshdewan8736 2 ปีที่แล้ว +27

    I'm currently pursuing mechanical engineering but lost interest in it a month ago and switched to coding. I'm in my 6th sem and just got finished with basic ds and am practising them at the moment. It's really a lot of pressure when you consider that there are people who have already learned what you are atm a good while back and are many steps ahead of you and you're competing against them.
    I don't have a lot of time left but still I'm trying to do my best, and videos like these really help a lot. Thankyou so much

    • @merc.5802
      @merc.5802 ปีที่แล้ว +1

      how's it going bro

  • @Ch4p1n17
    @Ch4p1n17 4 หลายเดือนก่อน

    As a self-taught this is very helpful. I still go over every concept possible but these videos help me focus more on certain ones, thank you!

  • @jeremyvonhatten5811
    @jeremyvonhatten5811 2 ปีที่แล้ว +13

    Permutations and combinations would be a good topic to understand. It is easy to get confused about generating them and the different types

    • @burburchacha
      @burburchacha ปีที่แล้ว

      I've done quite a few Leetcode questions but these are the two I find these two topics the most difficult by a wide margin! Really struggle with these two.

  • @numberonep5404
    @numberonep5404 2 ปีที่แล้ว +26

    I couldn't agree more with this list ! Honnestly, I really think once you get the hang of recursion/the recursion stack and why log(n) is pretty neat, then a lot of other things become much easier to grasp. Btw, I think nobody would mind if you beefed up that graph algorithm playlist a little more, it's totally jaleous of the DP playlist xD Like Vegeta is jaleous of Goku kinda thing

  • @spike_021
    @spike_021 2 ปีที่แล้ว +14

    Just started interviewing this month for mid/"senior" level SWE roles again, so far the majority of problems have been sliding window in some shape or form.
    Today I got some bit logic operations one that I totally bombed because I always forget which shifting to do for digits. Sigh.

  • @LinkingYellow
    @LinkingYellow 2 ปีที่แล้ว +1

    I don't work at a major company, but where I work, we really only care that pointers don't confuse you and that you can do basic problem solving. Even with the bar so low, we rarely find anyone that fits.

  • @MohammedShirhaan
    @MohammedShirhaan 2 ปีที่แล้ว +3

    I am so glad I found your channel few days ago. Purely gem of a content. I got hopes now to clear FAANG.

  • @pelusemua8425
    @pelusemua8425 2 ปีที่แล้ว +6

    Hi neetcode! 2:56 Doing heapify costs O(n), but when we pop each element to get the minimum or maximum element (depends on maxHeap or minHeap), it will cost O(log n). It means the total generally will cost O(n log n) because we need log n to get the particular element for n size.

    • @thineshkumar2156
      @thineshkumar2156 2 ปีที่แล้ว +1

      Heapify costs O(n), then popping the min/max element is O(log n). So the total is O(n + log n), which is still O(n).

  • @AndreiMushinsky
    @AndreiMushinsky 2 ปีที่แล้ว +88

    Sliding Window is actually a Dynamic Programming technique. You start with the small subproblem and gradually progress towards larger subproblems by reusing the result of the previous ones until you get the final result.

    • @ichigo9688
      @ichigo9688 ปีที่แล้ว +27

      No. You probably are saying that because of a particular problem in mind. It may not always be the case.

    • @dibyaranjan4720
      @dibyaranjan4720 ปีที่แล้ว +3

      No.

    • @RohitSingh-em2pm
      @RohitSingh-em2pm ปีที่แล้ว +2

      Don't think so, I think so you probably have a question in mind.

    • @arten8281
      @arten8281 2 หลายเดือนก่อน

      Nah 👎

  • @dennismeissel
    @dennismeissel 2 ปีที่แล้ว +6

    It is not Djikstra, it is Dijkstra :)
    Thank you for the great video!

  • @sellygobeze7173
    @sellygobeze7173 2 ปีที่แล้ว

    Time should really name you Person of the Year!! At the very least, you should be on the TIME 100: Most Influential People of 2022 - you've helped so many people! Thank you!

  • @JoeChang1999
    @JoeChang1999 2 ปีที่แล้ว +2

    I did start to solve problems using BFS, DFS, Recursion in my dream lol since I began to prepare for my incoming Google interview. I hope I can pass it.

    • @NeetCode
      @NeetCode  2 ปีที่แล้ว +1

      Good luck!

  • @UtshaSaha-p1x
    @UtshaSaha-p1x 10 หลายเดือนก่อน

    You are the best teacher for DSA and system design !

  • @kang8809
    @kang8809 2 ปีที่แล้ว +1

    "I could have made this list longer but I like to be concise".
    _Also includes DP, trees, graphs all under Recursion name_

  • @aadityakiran_s
    @aadityakiran_s ปีที่แล้ว +27

    When I started to prepare dor DSA 6 months ago, I only had a theoretical understanding of the concepts you've said here.
    6 months in, now I've solved 150 questions and my understanding of all these concepts is pretty good.
    You're a great resource dor coding interviews. Please do some videos on LLD also since that's more important than HLD for junior levels.

    • @yippeeki-yey
      @yippeeki-yey ปีที่แล้ว +1

      What is DSA dude

    • @cashappmethodscammer
      @cashappmethodscammer ปีที่แล้ว +2

      @@yippeeki-yeyDSA stands for data structures & algorithms

  • @umagadam5789
    @umagadam5789 2 ปีที่แล้ว +1

    No words to say for your hardwork which is helping for coding interview 🙏

  • @robinfelix3879
    @robinfelix3879 2 ปีที่แล้ว +2

    I started Dynamic PRogramming today. Thanks for saving me 😅 . Can you please let us know about GOOGLE? what type of DS & Algo is common in Google interview questions?

  • @vdyb745
    @vdyb745 2 ปีที่แล้ว +1

    Wow ... This is an unexpected treat after 5-6 videos over last week !!! LOL .... You rock dude ! Thank you for this one. Since you mentioned - would definitely love your google interview experience and if it covered sys interview, would love videos on those topics. You are an awesome teacher !!!

  • @jayeshkaushik2975
    @jayeshkaushik2975 2 ปีที่แล้ว +101

    Subjects asked in Google interview like OS, system design video pls,🙏

    • @Nick-uo2bi
      @Nick-uo2bi 2 ปีที่แล้ว +3

      Coding only

    • @outofbody4788
      @outofbody4788 2 ปีที่แล้ว

      @@Nick-uo2bi coding only?

    • @kirilivanov7677
      @kirilivanov7677 2 ปีที่แล้ว

      @@Nick-uo2bi a

    • @Nick-uo2bi
      @Nick-uo2bi 2 ปีที่แล้ว

      @@kirilivanov7677 yes

    • @JGComments
      @JGComments ปีที่แล้ว

      Even if he teaches everyone how to ace a “typical” FAANG technical interview, the result would be that they no longer act as an effective way to filter out candidates, and they would just change what they ask, rendering the “answers” useless for interviewing.

  • @modreamer
    @modreamer 2 ปีที่แล้ว +2

    Your voice sounds so pleasant by the way 😀

  • @shreyabhattacherjee6388
    @shreyabhattacherjee6388 9 หลายเดือนก่อน

    It will be very beneficial if we can have a separate playlist for Hashmaps. It's particularly important for folks trying to prepare for data Science interviews- where python coding questions are typically not that hard but not easy as doing simple for loops.

  • @zohahs5276
    @zohahs5276 2 ปีที่แล้ว +2

    nice one, please do a series for beginners who are just starting into this like a career path or something how they can start on this journey where to begin what to learn first and then move on to next step of solving algorithms etc don't think a beginner programmer can do/solve these problems without having solid understanding of OOPS / Loops / conditions basic data structures thankalot.

  • @shawnsanchez7545
    @shawnsanchez7545 2 ปีที่แล้ว +1

    Heap-ify is still O(N) from a stream or uncertain N elements, if you do heappush N times. I think

  • @TechnoRiff
    @TechnoRiff 2 ปีที่แล้ว +2

    Nice! Right to the point.

  • @ud3592
    @ud3592 7 หลายเดือนก่อน

    April ‘24 and this is still on point

  • @shreyabhattacherjee6388
    @shreyabhattacherjee6388 9 หลายเดือนก่อน

    Thank you so much for the video. This is very helpful. Is there a video where there in explanation of how each of these algorithms work ? Or are they explained in individual videos where you have solved questions that uses these concepts ?

  • @the8426
    @the8426 2 ปีที่แล้ว +2

    Thank you for all you do! I appreciate it a lot! Can you do a video on your google interview experience? The concepts, level of difficulty and etc...? I'm a bit surprised you did not put Dynamic programming up there, for someone who just interviewed at Google, or is Google one of those companies trying to get rid of it? Thanks in advance!

  • @somenchowdary6300
    @somenchowdary6300 2 ปีที่แล้ว

    Basically all the Data Structures. Awesome! 😅😅

  • @soumyajitganguly2593
    @soumyajitganguly2593 7 หลายเดือนก่อน

    Every topic / concept has its own share of easy, medium and hard problems. I dont get it why people are so afraid of dynamic programming. It is not as hard as people call it out to be. There are so many 2 pointer, heap, binary search problems which are waaay harder than DP. You will practice recursion anyway, you will practice DFS anyway. DP is just adding 1 more line to the recursive code (and ofcourse understanding what that line does).

  • @rhosymedra6628
    @rhosymedra6628 2 ปีที่แล้ว

    Thanks for this list! I need to work on DFS/BFS and sliding window.

  • @adityag6022
    @adityag6022 18 วันที่ผ่านมา

    Thank you Neetcode

  • @leandrormor
    @leandrormor 2 ปีที่แล้ว

    I'd like to go in each topic of these neat list creating a SIMPLEST application to the concept and growing with possibilities over that concept. (like: a simplest graph traversal, now with weights, now the graph is implicit..)

  • @nalininadupalli3131
    @nalininadupalli3131 ปีที่แล้ว +1

    Thanks so much for curating this list! Can you please create a playlist for HashMap questions? Or may be make one video pointing to which problems can be considered as HashMaps.. I often get confused as to what HashMaps are esp in Python as Python has dictionary data structure and my mind always goes to this when talking about HashMaps. Thanks so much in advance!

  • @shrunty
    @shrunty 2 ปีที่แล้ว +3

    Hey neetcode, can you make a playlist for heap problems too?

  • @neeldesai108
    @neeldesai108 2 ปีที่แล้ว

    I am completely agree with this list.

  • @TheQuancy
    @TheQuancy 2 ปีที่แล้ว +1

    A little scared. I have my onsite with Google in a month and I've been told by other Google employees to study Dynamic Programming...

  • @yichizhang1
    @yichizhang1 2 ปีที่แล้ว

    Great list! If there's one more to add, I would say Trees.

  • @obudo
    @obudo 2 ปีที่แล้ว +8

    Ah, good to know that DP is not that important! I only did 100 DP problems, not that big of a deal 🥲
    I have my Google onsite tomorrow, any tips to keep the tension under control?

    • @davidespinosa1910
      @davidespinosa1910 2 ปีที่แล้ว +1

      Valium :-)

    • @MrAkehtam
      @MrAkehtam 2 ปีที่แล้ว +1

      All the best 🙂, breathing exercises.

    • @NirmalSilwal
      @NirmalSilwal 2 ปีที่แล้ว +1

      all is well, you will shine, good luck

    • @obudo
      @obudo 2 ปีที่แล้ว

      @@NirmalSilwal thanks, that was so nice of you! Wish you all the best!

    • @obudo
      @obudo 2 ปีที่แล้ว

      @@MrAkehtam thanks, that did actually help a bit ^_^

  • @noahg2
    @noahg2 2 ปีที่แล้ว +3

    Hello, I just wanted to know if JavaScript a good option when it comes to solving problems or should I go with python or c# ?

  • @MeenakshiSankaranarayanan
    @MeenakshiSankaranarayanan 6 หลายเดือนก่อน

    Thanks a lot buddy... Very helpful ❤

  • @kwamenani7775
    @kwamenani7775 2 ปีที่แล้ว +1

    Always awkward when an interviewer isn't aware of your proposed solution and its complexity and you need to spend several minutes to explain while time is working against you.

  • @free-palestine000
    @free-palestine000 2 ปีที่แล้ว +2

    @7:22 lol i believe the j is silent in djikstra's! also yes pls make a video on your experience interviewing at google. didn't you say that was your first full time interview?

    • @TheMaddybaddy
      @TheMaddybaddy ปีที่แล้ว

      That's because the surname is Dijkstra, not Djikstra ;)

  • @YouGotVexed
    @YouGotVexed 2 ปีที่แล้ว

    Neetcode with yet another banger

  • @nicholastocco6058
    @nicholastocco6058 2 ปีที่แล้ว

    Very helpful thanks neetcode you're the man!

  • @kausikvenkat
    @kausikvenkat 2 ปีที่แล้ว +6

    I'm surprised you mentioned DP wasn't that common given you're at Google. I've heard Google asks DP a lot

  • @valenciawalker6498
    @valenciawalker6498 ปีที่แล้ว +1

    Thank you!

  • @sdaiwepm
    @sdaiwepm 2 ปีที่แล้ว

    Thanks for the overview! 6:33 FYI, that is pronounced "Dyke-strah."

    • @NeetCode
      @NeetCode  2 ปีที่แล้ว

      Yeah i learned that eventually lol, after I recorded most of my videos unforunately lol

  • @michaeltreat4000
    @michaeltreat4000 2 ปีที่แล้ว +2

    Why are dynamic programming questions banned/ discouraged?

  • @ethereal_emily
    @ethereal_emily 2 ปีที่แล้ว +1

    What would you recommend if a heap problem comes up and we're using say JavaScript which doesn't have a built in heap type? Should we try and implement a heap on the fly or should we solve it less efficiently and just note we'd use a heap if a library were available?

    • @amitpadaliya6916
      @amitpadaliya6916 2 ปีที่แล้ว +2

      We should use library. Only limited time of 45mins( at max ) is given per problem in a coding round. If the language doesn't have in built heap then switch the language.The interviewer wants to check how you can use existing Data structures to solve your problem efficiently.

    • @botousai
      @botousai ปีที่แล้ว

      @@amitpadaliya6916 I disagree. You can just as easily say "JS doesn't have this data structure, so I am going to assume it exists and solve the problem". They aren't testing your ability to create a data structure from scratch.

  • @ashishmishra231
    @ashishmishra231 2 ปีที่แล้ว +1

    Thank you so much for these great videos. Are these 6 concepts also common in data science coding interviews?

  • @gauravdesale47
    @gauravdesale47 2 ปีที่แล้ว

    Great video man keep up the good work

  • @enrico8730
    @enrico8730 2 ปีที่แล้ว +1

    Thank you for this vid and all the other ones.
    Have you done "CAPACITY TO SHIP PACKAGES WITHIN D DAYS" problem yet? Would love to see your tutorial on it.

    • @1cannon3
      @1cannon3 2 ปีที่แล้ว

      That one is tough. I don't like the condition function for that problem, I think it's an implicit graph/dp problem so pretty hard. I had an easier time with 2187. Minimum Time to Complete Trips and KoKo eating banana problem.

    • @enrico8730
      @enrico8730 2 ปีที่แล้ว +2

      @@1cannon3 yeah it is. It’s solvable with binary search but I still can’t wrap my head around it

  • @DSASolutions
    @DSASolutions 2 หลายเดือนก่อน

    Well explained

  • @sophiaatn5339
    @sophiaatn5339 2 หลายเดือนก่อน

    My favourite is hashmaps ❤

  • @codelinx
    @codelinx ปีที่แล้ว

    Can we get an update to this and maybe a walk through on these patterns on separate videos?

  • @adrianford468
    @adrianford468 2 ปีที่แล้ว

    Bro always spot on

  • @MegaHatef
    @MegaHatef 2 ปีที่แล้ว

    Do you why the companies are banned to ask DP questions?
    In your interviews with Google did they ask you DP related questions?

  • @ssowvik
    @ssowvik 2 ปีที่แล้ว

    Thank you Neet

  • @henrylin2008
    @henrylin2008 2 ปีที่แล้ว +3

    Thank you! Neetcode. I always looking forward to your videos every day, and keep me motivated while grinding through the coding problems. Keep up the great work!
    ps, thanks for the suggestion and the discount of AlgoMonster! :)

  • @tammy55743
    @tammy55743 ปีที่แล้ว

    Great vid!

  • @fahimishrak2731
    @fahimishrak2731 2 ปีที่แล้ว +1

    Google interview experience please

  • @RohitKumar-dv7bw
    @RohitKumar-dv7bw 2 ปีที่แล้ว

    Please make a series of coding questions in Java with topic wise

    • @fahimishrak2731
      @fahimishrak2731 2 ปีที่แล้ว

      th-cam.com/video/emNkJGwcusQ/w-d-xo.html

  • @Nathan00at78Uuiu
    @Nathan00at78Uuiu ปีที่แล้ว

    you mention dynamic programming isn't that common but it takes up a significant portion of leet75 problems.

  • @jeffreylee6322
    @jeffreylee6322 ปีที่แล้ว +1

    My technical interview with a big oil company had 2D programming :(

    • @Ashwin_1198
      @Ashwin_1198 ปีที่แล้ว

      2D DP?

    • @ssjg-ue9sg
      @ssjg-ue9sg 8 หลายเดือนก่อน

      Which leetcode question was it?

  • @hotasandeep1980
    @hotasandeep1980 2 ปีที่แล้ว

    Can you make a video around Linked List using hadhmaps?

  • @ingluissantana
    @ingluissantana 2 ปีที่แล้ว

    Great video!!!! 🙌🏼🙌🏼🙌🏼🙌🏼

  • @karankanojiya7672
    @karankanojiya7672 2 ปีที่แล้ว +2

    Two Pointer and Sliding windows are they different?
    But Respect++ for your content sir❤️

    • @programming3043
      @programming3043 2 ปีที่แล้ว

      Yep

    • @Aret24Official
      @Aret24Official 2 ปีที่แล้ว

      He meant that Sliding window uses 2 pointers, one that defines left bound of the window, and another one the right one.
      Two Pointers Algorithm is when one pointer starts at first element, second on last, and there a target number.
      If the sum of the numbers of both pointer is bigger than the target, move second pointer to the left. If it is smaller, move first pointer to the right.
      And in result you'll get two numbers that will result in a target number when added.

  • @tonynguyen4007
    @tonynguyen4007 2 หลายเดือนก่อน

    Hi
    May I ask what you are using to draw in this video.

  • @yzhu
    @yzhu ปีที่แล้ว

    for those who use js, what happen when you know the question needs heap? since there is no native heap implementation in JS?

  • @mostafabarri8774
    @mostafabarri8774 2 ปีที่แล้ว +1

    What about greedy algos, do you see that alot?

  • @angelosguan6782
    @angelosguan6782 2 ปีที่แล้ว +1

    I have seen dynamic programming problem in almost every oa and interviews I have got so far. Is this normal this year

  • @mohansharma1989
    @mohansharma1989 2 ปีที่แล้ว

    Neet, I must say your drawing explanation helped me a lot to learn quickly. I followed most of your curated75 explanations to create a mind map of your drawing explanations. Will you please create a playlist for grokking-the-coding-interview's problems as well plus grokking-the-system-design-interview if possible. These courses are really very costly if we convert them to INR 🙃

  • @TheTalisman515
    @TheTalisman515 2 ปีที่แล้ว

    Enjoying the content

  • @relieyanhilman1677
    @relieyanhilman1677 ปีที่แล้ว

    sorry if out of topic. but is there any recommendation programming language that should we use in coding interview? like in my cases, i got familiar with javascript, is it okay if i do the coding interview with js? or should i learn java to do the interview?

    • @Ashwin_1198
      @Ashwin_1198 ปีที่แล้ว

      Yeah js is enough... Programming language doesn't matter that much

  • @TimothyZhou0
    @TimothyZhou0 6 หลายเดือนก่อน +1

    tbh I don't really understand why people think dynamic programming is so hard. DP = recursion + memo tables, that's all it is; if you have a solid grasp of recursion then DP should feel quite natural

  • @NirmalSilwal
    @NirmalSilwal 2 ปีที่แล้ว +1

    yeah, do share your Google experience 😀

  • @chilly2171
    @chilly2171 2 ปีที่แล้ว

    i don't think best time to buy and sell stock is a sliding window, it can be solved using 1 question i think.

  • @andrewchu6370
    @andrewchu6370 2 ปีที่แล้ว

    Hey just a quick question, are datastructures and algorithms problems(the ones asked on leetcode) useful in the long term for Software Engineers? Or are they only helpful in cases such as interviews? Thank you!

    • @mrgalaxy396
      @mrgalaxy396 ปีที่แล้ว +3

      In the real world, someone much smarter than you already implemented these data structures and algorithms for you in a more efficient way than you could probably ever write. Many come in the standard library of the programming language that you need to work in or as an external lib you can include in your project. So implementing data structures and algorithms is usually reserved for specific needs when the out of the box solutions don't solve the problem for you. Most of the time you will just use these premade solutions to solve the problem in your app.
      Knowing data structures and algorithms is essential because I'd say 50% of a software engineer's job is knowing when to apply which tool to solve a problem. That way you're not wasting time remaking the wheel in a probably more bug prone solution, but instead improving your productivity and providing a harder to break solution. Software engineering is all about recognizing patterns, when you know these patterns you can optimize your dev time and your solution, improve readability and shareability and so on. You will also know the trade offs of each tool so you know when it's better to apply a different tool than it might seem at first glance.
      Depending on your project most of the time you're probably not gonna need anything besides the basics and to just know the API of the standard library of your programming language. You won't be solving complicated algorithmic problems most of the time either, most of the complexity will come from the architecture you're using and the business requirements of your project. Knowing how to reverse a binary tree might not help you there, but if you understand how to solve that kind of a complicated problem, then you can probably figure out how to solve whatever is the actual problem at hand because it demonstrates you're good at pattern recognition and breaking down problems into smaller divisible chunks that are easier to solve. Of course there is a lot more to the software engineering roles than just that, lots of communication and organizing skills are needed besides it among other things, but this is an easy way for interviewers to standardize the process to and filter out unwanted candidates. Remember, the interview isn't there to pick the best person for the job, it's to make sure you filter out all the undesirables.

  • @celeryystick
    @celeryystick 2 ปีที่แล้ว +1

    how about for internship interviews?

  • @agnesakne4409
    @agnesakne4409 ปีที่แล้ว

    I think Eulerian Circles belong to this list as well

    • @Yougottacryforthis
      @Yougottacryforthis 11 หลายเดือนก่อน

      how lmfao that is some niche topic inside graphs

  • @bettereyeai8473
    @bettereyeai8473 2 ปีที่แล้ว

    This is helpful

  • @maxchen7529
    @maxchen7529 ปีที่แล้ว

    why heapify time complexity is O(n) .

  • @tonyz2203
    @tonyz2203 2 ปีที่แล้ว +3

    failed my Google onsite😭😭😭

    • @mattheww1072
      @mattheww1072 2 ปีที่แล้ว

      Why did you fail? Where did you mess up?

    • @mohansharma1989
      @mohansharma1989 2 ปีที่แล้ว +7

      There is always a morning after night. Don't worry

    • @jugsma6676
      @jugsma6676 2 ปีที่แล้ว

      Keep it, strong brother. I am in the similar situation, and many times.

  • @bhaskarsawant8491
    @bhaskarsawant8491 ปีที่แล้ว

    Which questions you got asked in your Google interview 🤔

  • @hlubradio2318
    @hlubradio2318 7 หลายเดือนก่อน

    Too bad I had a Google offer but didn't go last year.

  • @aghilannathan8169
    @aghilannathan8169 2 ปีที่แล้ว

    You probably don't realize this but most videos are nowhere near the quality of yours because you always explain your thought process and draw it out. No other TH-camr does that and I have neve forgotten how to do a question if I watched your video.

  • @THEMATT222
    @THEMATT222 2 ปีที่แล้ว +2

    Seems like coding interviews requires *heaps* of knowledge to pass ;)

  • @SuperKidontheblock
    @SuperKidontheblock 2 ปีที่แล้ว

    What do you mean they banned it?

    • @NeetCode
      @NeetCode  2 ปีที่แล้ว +1

      Some companies like Facebook supposedly banned their employees from asking DP questions in interviews.

  • @guneet42
    @guneet42 2 ปีที่แล้ว

    I think you missed few more techniques:
    1. Two Pointer
    2. Prefix Sum

  • @The_Pariah
    @The_Pariah 5 หลายเดือนก่อน

    To be clear for anyone else not wanting to waste time, this video is just a lot of talk and almost no coding.
    If you're expecting to see code examples, don't waste your time with this video.

    • @andiuptown1711
      @andiuptown1711 5 หลายเดือนก่อน

      *I mean, anyone with common sense can tell by raising the title*