How To Get Good At LeetCode

Sdílet
Vložit
  • čas přidán 23. 07. 2024
  • An Ex-Googler and Top Ranked LeetCoder explains how to get good at LeetCode.
    My links:
    • Twitch - / qiqi_impact
    • Discord - / discord
    • LeetCode - leetcode.com/twitch_tv_qiqi_i...
    Mentioned in the video:
    • Blind 75 - leetcode.com/discuss/general-...
    • Neetcode Roadmap - neetcode.io/roadmap
    • LeetRooms Chrome Extension - leetrooms.com
    • CP-Algorithms - cp-algorithms.com
    Timestamps:
    00:00 I'm new to algorithms. How do I learn this stuff?
    00:39 There are thousands of problems. How do I know which ones to solve?
    01:16 I'm stuck on a problem. When should I give up?
    01:38 What types of problems do I need to be able to solve to get a job?
    02:33 Do I need LeetCode Premium?
    03:38 I struggle with solving problems under a time limit. What can I do?
    04:23 Do I need to learn Python? I know another language but I heard it's easier.

Komentáře • 299

  • @NeetCode
    @NeetCode Před rokem +1172

    Completely agree that you should just start solving problems before learning theory. A lot of the easy questions are as simple as reversing a string, not exactly an academic algorithm..
    But great video, subscribed!

    • @qiqi_impact_official
      @qiqi_impact_official  Před rokem +83

      Thanks! Your roadmap is pretty useful and easy to follow!
      This is my first video, let me know if you have any tips/feedback on the video/audio quality etc.

    • @NeetCode
      @NeetCode Před rokem +124

      @@qiqi_impact_official I liked that it was really genuine, and not super flashy. A lot of YTers nowadays just make the exact same 'generic' videos.
      But imo making 'hardcore' or 'niche' content is a better long term strategy.
      You might get a lot of views from a video like "How i would learn to code again if i could start over", but those types of viewers are pretty 'casual' and wont stick around.
      What separates you from 99% of other YTers (including me) is you're better at coding than them. Best to use that to your advantage.

    • @qiqi_impact_official
      @qiqi_impact_official  Před rokem +66

      @@NeetCode Appreciate the insight! I haven't decided what I'll do for future videos, but I'll keep that in mind.

    • @markzuckerbread1865
      @markzuckerbread1865 Před rokem +3

      solving problems allows you to make observations, learning theory allows you to connect those dots and see a bigger picture, I see this in many areas in programming.

    • @IsaacC20
      @IsaacC20 Před rokem +10

      ​@@markzuckerbread1865 Neetcode and Qiqi's points are valid but they seem incomplete by saying that the "theory" is optional. Some LC problems (especially the tacked-on "challenges") require, at the very least, the basic concepts introduced in, say, an introductory course to pure mathematics or compsci. For example, formalization of the concept of divisibility is utilized in the "challenge" of problem 1920, where the solution involves "encoding" two values into a single value. If you didn't know the formal definition of divisibility, it'd be almost impossible to come up with an answer. Even then, if you came up with something that didn't rely on the divisibility definition (q*a + r = b), you would have needed the proof-oriented rigor of a math student to justify your own custom encoding function (i.e., to prove correctness).
      Theory is also important when writing bug-free code: it's one thing to be able to write a solution that passes a set of tests i.e., the solution is only as good as the quality of the tests. It's another to prove a solution is correct i.e., the solution will *always* be correct, which has the side effect of showing that a test was written with errors.
      TLDR; if you skip theory, you're learning how to solve particular LC problems and its variants, but you won't gain experience seeing why a solution is creative (i.e., understanding how a problem is solved by "thinking outside the box") -- which helps when you tackle problems you haven't seen/encountered before. These problems tend to be asked at fintech companies where there is a higher negative impact/less tolerance for making naive math errors in codebases. With problem 1920, a person who don't know "the theory (of discrete mathematics)" might reflect and conclude "I'll see if I can reapply that definition in other problems" where a person "with theory knowledge" might observe that "This definition has an uncanny applicability to a seemingly unrelated problem. I wonder what sorts of seemingly unrelated problems are solved by applying, say, the multinomial theorem."
      Some problems of focusing on theory is that: (1) The depth of theory can suck up all of your time, which is an issue if you're doing this to get a job in the near future. (2) Not all concepts are applicable to LC problems.

  • @gentus7239
    @gentus7239 Před rokem +396

    why cant more videos be like this? Short and to the point, everything I could have wanted when clicking on the video! Awesome work!

    • @methanesulfonic
      @methanesulfonic Před rokem +6

      "why...", because it's bad for the algorithm

    • @horizonfios
      @horizonfios Před rokem

      @@methanesulfonicthen can they change the algorithm

    • @CJCJCJCJ
      @CJCJCJCJ Před rokem +2

      @@horizonfiosbut that wouldn’t maximize user engagement

    • @atharvabhosale3529
      @atharvabhosale3529 Před rokem

      ​@@horizonfiosthe algorithm is here to print money for CZcams not to serve us knowledgeable content. All social media is here to earn money not provide anything unless you resist the algorithm and use the tools to your benefit.

  • @cybelismuth
    @cybelismuth Před 11 měsíci +5

    I loved how its was just question / answer right to the point, i was focused through the whole thing! good job

  • @CristianoRonaldo-vv6sv
    @CristianoRonaldo-vv6sv Před rokem +54

    This is clearly the best video on leetcode problem solving and I can relate to a lot of it. Great job keeping it short and sweet. WIll be looking forward to your weekly comment for some hints after this weekends contest

  • @ecxscariot335
    @ecxscariot335 Před 11 měsíci +19

    simple, concise and actually helpful. thank you very much. You understand your audience completely.

  • @vamseekotha
    @vamseekotha Před 11 měsíci +3

    Concise and on point! Great video.

  • @h.t.8812
    @h.t.8812 Před 11 měsíci +1

    thank you so much, i was thinking about getting a book on algorithm but i agree with your approach

  • @bharathprakash
    @bharathprakash Před 11 měsíci +7

    straight to the point , Excellent explanation.

  • @brettford946
    @brettford946 Před 9 měsíci

    this is an amazing source of information, thank you so much

  • @lukask.2549
    @lukask.2549 Před rokem +3

    The efficiency of this video is unmatched, appreciate u

  • @nosult3220
    @nosult3220 Před 11 měsíci +1

    I like your straight forward approach. It’s always best to fail fast

  • @goaheadskinit
    @goaheadskinit Před 10 měsíci +1

    Just came across your channel and glad I did. Thank you for the informative video.

  • @kamilpro
    @kamilpro Před 8 měsíci

    Quick, clear and to the point video - this is the way!

  • @braumski2
    @braumski2 Před 8 měsíci +5

    You really only mentioning easys and mediums gave me so much confidence 😅 I struggled so hard on my first medium a couple days ago

  • @RohitKumar-ku4nh
    @RohitKumar-ku4nh Před rokem +6

    Amazing video buddy, simple and to the point. Thanks!
    Underrated channel btw - shall blow up!

  • @TahMeeDzz
    @TahMeeDzz Před rokem +3

    Very Helpful Explanation, No BS

  • @zbdfhg
    @zbdfhg Před rokem +366

    I never knew Qiqi was so good at coding

  • @dankprogrammingmemes7807

    You earned a sub!!! Brilliant video. Thanks for making it

  • @coofzilla
    @coofzilla Před rokem +5

    extremely well spoken, solid content, yep this channel gonna blow up lol

  • @akshittyagi6482
    @akshittyagi6482 Před rokem +1

    thanks a lot for making this! really helps!

  • @KnackiiTM
    @KnackiiTM Před rokem +4

    First video I watch if you and I already really like you, very clear and I'll try to catch one of your stream to join a leetcode room if possible 😊 (I'm in EU so I hope it won't be too difficult)

  • @younesmdarhrialaoui643
    @younesmdarhrialaoui643 Před rokem +1

    1670 subs in a month with one video is very encouraging, keep going man!

  • @sarahzhao7564
    @sarahzhao7564 Před 10 měsíci +1

    This was so helpful, thank you!!

  • @cm3462
    @cm3462 Před 11 měsíci +1

    Great overview. Subscribed immediately.

  • @ricardo5460
    @ricardo5460 Před 6 měsíci

    Concise and to the point. Thank you!

  • @Q_Ultimas
    @Q_Ultimas Před rokem +5

    One of the best LeetCoders to learn from out there :)

  • @DenisAnzoategui
    @DenisAnzoategui Před 11 měsíci +1

    Trying to get my hands on Leetcode. Excelent video!

  • @palgogo
    @palgogo Před měsícem

    Really great video, like your explanation style

  • @jefferydahmer2013
    @jefferydahmer2013 Před rokem +1

    Great content. Subscribed!

  • @camperjett
    @camperjett Před rokem +1

    Pretty straight forward!! Thanks!

  • @jazmanseventeen7894
    @jazmanseventeen7894 Před rokem +6

    I had to triple check that this was by Qiqi impact, as im a genshin player and aspiring software engineer so I thought it was a youtube bug... please dont change your name, this is amazing

  • @nikhil182
    @nikhil182 Před rokem +4

    Starting early is the key, consistency also plays a huge role.

  • @The.MindMap
    @The.MindMap Před 10 měsíci +2

    You're good at making videos, continue the good work

  • @tempregex8520
    @tempregex8520 Před rokem +2

    one the few people who knows and understands the KISS principle !great video!

  • @abdosalah22
    @abdosalah22 Před rokem +2

    Great video! Keep going

  • @sudhanshutiwari2644
    @sudhanshutiwari2644 Před 11 měsíci +1

    The best straightforward answer.

  • @RajnishKumar-bo5ek
    @RajnishKumar-bo5ek Před 5 dny

    love the editing

  • @matthewmeeker8016
    @matthewmeeker8016 Před rokem +4

    Wow there was absolutely no fluff in this. Thank you.

  • @harpalsinhjadeja2568
    @harpalsinhjadeja2568 Před rokem +5

    No BS straight to the point!

  • @ruslan2676
    @ruslan2676 Před 6 dny

    The best video on how to practice leetcode!

  • @liamsebestyen4983
    @liamsebestyen4983 Před 5 měsíci

    Amazing Video. Thank you!

  • @AurelianoShowsTheWorld
    @AurelianoShowsTheWorld Před rokem +1

    Great vid, thank you!

  • @weakestdrainer
    @weakestdrainer Před rokem +2

    This video is very high quality for how many subs you have… Thanks for the info, i’ll be watching future videos

  • @anub631
    @anub631 Před 8 měsíci

    Dude you saved me. Thank you so much, subbed!

  • @akash-kumar737
    @akash-kumar737 Před rokem +47

    Coming here after Neetcode live.

  • @vijaysai9994
    @vijaysai9994 Před rokem +1

    Very Informative!!

  • @herschelschwartz7888
    @herschelschwartz7888 Před 8 měsíci

    astonishingly good video. I was prepared to be annoyed and this was pleasant and clear and very helpful

  • @Andrew_Guerrand_
    @Andrew_Guerrand_ Před rokem +1

    Thanks for sharing!

  • @prabinlamsal74
    @prabinlamsal74 Před rokem +1

    This video is GOLD!!!

  • @insculption7107
    @insculption7107 Před rokem +1

    great video !!

  • @ex0stasis72
    @ex0stasis72 Před 8 měsíci +6

    Sometimes mediums are easier than easies. But maybe because I've already learned most of the algorithms I need in university and some of the harder concepts may be more fresh in my mind.

  • @xaiyeon_xiuzhen
    @xaiyeon_xiuzhen Před rokem +1

    nice channel name xD and great video ty !!

  • @psyno1856
    @psyno1856 Před rokem +5

    here before you get big
    and thank you, this is probably the best video to solve all doubts

  • @prateek4-yearb.tech.chemic511

    best video on this topic

  • @sariaki6872
    @sariaki6872 Před 8 měsíci

    This video is gold!

  • @array5019
    @array5019 Před 11 měsíci

    the fact u talk like qiqi is very relaxing
    is python really fine, i have heard people say that u don't learn proper techniques of programming

  • @davidcarvalho5003
    @davidcarvalho5003 Před rokem +1

    My dude, you're the goat

  • @professormoriarty7439
    @professormoriarty7439 Před rokem +2

    Coming after neetcode live

  • @TricoliciSerghei
    @TricoliciSerghei Před rokem +1

    Sank you very very much my man!

  • @ItzAnameOk
    @ItzAnameOk Před rokem +1

    Algorithm gods bless thee. Didn't know you had a YT channel!

  • @somnathgolui2912
    @somnathgolui2912 Před rokem +1

    Hello, new subscriber here. I will join you on every live stream you do from now.

  • @spyfal5026
    @spyfal5026 Před rokem +1

    Really good video

  • @Crowbar402
    @Crowbar402 Před rokem +1

    Thank you!

  • @kevinbabu3581
    @kevinbabu3581 Před rokem +1

    such a good video

  • @caerulemusic
    @caerulemusic Před rokem +3

    thanks dawg

  • @dimitrijedjokic3387
    @dimitrijedjokic3387 Před rokem +4

    Thank you for advice, now I know I've had a completely wrong approach. I was scared of looking up solutions because you know I felt like it wasn't the right way, like I'm copying someone's homework, so when I wouldn't understand how to solve a problem, I would go back to literature and tutorials...

    • @qiqi_impact_official
      @qiqi_impact_official  Před rokem +2

      Having the determination to solve a problem yourself is often very valuable for learning! The only problem is that it can be inefficient if you need to learn many concepts in a limited time.

    • @phongtranquoc7557
      @phongtranquoc7557 Před 28 dny

      I suggest use notion and record every solution you solved with or without solution and try to explain the solution on your own interpretation.

  • @awesomedavid2012
    @awesomedavid2012 Před 11 měsíci

    I like the problems on leetcode and the hypothetical performance/memory comparison that is probably inaccurate af, but the fact that there is no LSP is actually wild.

  • @shloksuman8164
    @shloksuman8164 Před 11 měsíci +1

    really helpful

  • @-Spirit
    @-Spirit Před rokem +1

    thanks qiqi

  • @onio907
    @onio907 Před 8 měsíci

    thanks for sharing

  • @notdarkangelu
    @notdarkangelu Před rokem

    Here while you still had 1.08k subs!!

  • @theinquisitor18
    @theinquisitor18 Před rokem +2

    I'm not interested in being a developer. I'm going into Data Analytics. I've been grinding SQL questions. If technical interviews weren't a thing, I'd still do it. I've learned so much from them. My University never acknowledged CTEs, Window Functions, or rolling totals.

  • @henriquefigueiredo4077
    @henriquefigueiredo4077 Před rokem +1

    Good video.

  • @CodeGeeks0
    @CodeGeeks0 Před rokem +1

    Awesome 😎

  • @jlecampana
    @jlecampana Před rokem +25

    This is very insightful, I was wondering if you have any advice on how to identify in which topics one's weak at? Is this what Contests are generally for? And thank you for the great video!

    • @qiqi_impact_official
      @qiqi_impact_official  Před rokem +10

      The best way to do this (without randomly trying lots of problems) is by going through one of the problem lists in the description.

  • @jairajsahgal7101
    @jairajsahgal7101 Před rokem +1

    thank you

  • @ahmedmohsen6403
    @ahmedmohsen6403 Před 10 měsíci +1

    never thought I would see qiqi and coding together. they are both cursed though so that is one similarity.

  • @candysuccubus
    @candysuccubus Před rokem +1

    n0ic p0g g00d vid!

  • @archirnobenz
    @archirnobenz Před 8 měsíci +1

    I clicked on the channel to find Genshin content, and ended up watching through the whole video. Worth

  • @Apollo.E
    @Apollo.E Před 6 měsíci +1

    Hello, QiQi.
    First, I really appreciate the way you and others share relevant information and advice on where to start developing your skills in solving LeetCode problems. NeetCode, Blind, consistency and a few others have been mentioned numerous times.
    However, what I really question is whether it is possible for the "average" person to achieve skills high enough to be in the top 0.04% by following these and other tips, just by practicing and solidifying a bit with theory over time?
    Perhaps I'm trying to find a "holy grail" that doesn't exist, but I also can't ignore the bell-shaped curve. From a statistical perspective, it's an extraordinary problem-solving skill and worthy of some measure of admiration, in my opinion.
    I apologize in advance if your answer to my question is this video. As I wrote earlier, the reason for this is my impression of your skills.

    • @qiqi_impact_official
      @qiqi_impact_official  Před 6 měsíci +1

      It doesn't matter what the average person can do. It matters what you can do.
      Figure out what your goals are and form a plan to try to achieve them. If you make it, great! If not, you've gained experience in embarking on a skill-building adventure, which is useful everywhere else in life.

  • @rutabega306
    @rutabega306 Před rokem

    Leetcode interviews is a thing of the past

  • @yousufazad6914
    @yousufazad6914 Před rokem +1

    Chad level video

  • @aadityakiran_s
    @aadityakiran_s Před rokem

    Hash tables, Graphs and Dynamic Programming. So basically easiest data structure to the most difficult category. I think I get what you're trying to say.

  • @gshard14
    @gshard14 Před rokem +1

    The segmentation fault fear is true 🤣

  • @harshsaxena7102
    @harshsaxena7102 Před 11 měsíci

    never seen a fellow leetcoder who has is so insanely peaceful

  • @its_mrad
    @its_mrad Před 10 měsíci +1

    Hey please start uploading more videos on youtube. I wanna learn from you :)

  • @SuryaPraK45H
    @SuryaPraK45H Před rokem

    Can you give a roadmap on system design learning?.

  • @_MNF__
    @_MNF__ Před 4 měsíci

    I thought youtube was bugging when i looked at your channel name and the video title

  • @sudhanshusingh-cy9wp
    @sudhanshusingh-cy9wp Před rokem +2

    If “to the point” had a definition, its you my friend

  • @grim.reaper
    @grim.reaper Před rokem +1

    Seg fault in an interview problem will definitely seg fault my brain for few days 😵‍💫

  • @KacyCodes
    @KacyCodes Před rokem

    3:23 hey that’s my video on critical connections in a network lol

  • @cbradiooo
    @cbradiooo Před rokem +1

    🔥

  • @wpersonwlife
    @wpersonwlife Před 11 měsíci +2

    If I'm struggling with LeetCode questions, should I continue with CodeWars until I become more comfortable with the syntax? And if that's the case, when would be a good time to transition to LeetCode?

    • @qiqi_impact_official
      @qiqi_impact_official  Před 11 měsíci +1

      That seems reasonable. Move to LeetCode when you think you're ready.

  • @nhatphong974
    @nhatphong974 Před rokem +2

    come for qiqi, stay for ur great video. many thanks

  • @adfasdfasdf643
    @adfasdfasdf643 Před 2 měsíci

    you must have pulled Qiqi a billion times to devote yourself to becoming a god of leetcode

  • @wheelkeem
    @wheelkeem Před 11 měsíci

    how would you go about sustainable schedules for leetcoding for interview prep? How many questions/hours a day/week, and how would you structure that allotted time?

    • @qiqi_impact_official
      @qiqi_impact_official  Před 11 měsíci

      Depends on the level you're at, the level you need to achieve, and how long you have to do it. As far as structure, just try challenging problems in topics you need to learn, reading solutions if you are stuck for a while.

    • @masterchief1520
      @masterchief1520 Před 9 měsíci

      Just allocate the time you can afford. how does scheduling really matter? as long as you're learning keep going. Start applying to not really your dream companies once you start getting confident. Use that feedback to decide if you have to practice more or apply to your dream company

  • @xit
    @xit Před rokem +1

    subbed

  • @bobbobby3056
    @bobbobby3056 Před rokem +1

    24 hour leetcode challenge o_o

  • @gaurangdeka
    @gaurangdeka Před 6 měsíci

    Great video Qiqi, but as a beginner there are a few problems with your suggestion I would like to point out
    1. The question lists mentioned such as neetcode 150 and blind 75 are dominated by hard/medium questions which is not very beginner friendly
    2. Learning concepts/implementations as you go is highly time-consuming

    • @qiqi_impact_official
      @qiqi_impact_official  Před 6 měsíci +1

      1. Then start with the Easy questions in each category, and work your way into Mediums later. If you run out of Easy questions and you're too far from being able to do Mediums, do random Easy problems that aren't on the lists.
      2. Learning as you go is the quickest way I've found to gain mastery. I find it much faster than from books. Do you suggest an alternative?

  • @1UI1
    @1UI1 Před rokem +2

    I once heard an engineering manager at Google say that achieving the optimal solution in an interview (for a junior) is one of several factors that are considered. How true is this?

    • @qiqi_impact_official
      @qiqi_impact_official  Před rokem +3

      When any company asks a LeetCode question, they are looking for a single "correct" algorithmically optimal solution, so it is always a factor.