Jump Game (LeetCode 55) | Full solution with animations and visuals | Greedy Algorithms

แชร์
ฝัง
  • เผยแพร่เมื่อ 6 ก.พ. 2025

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

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

    This is actually a very good explanation. I was able to understand because of the dry-run of the code. Thanks a lot.

  • @yomamasofat413
    @yomamasofat413 5 หลายเดือนก่อน +6

    man every question like this just feels so exhausting. It's either some kind of trick or hack to solve the problem.

  • @meghan6819
    @meghan6819 11 หลายเดือนก่อน +5

    Your solutions and explanations are great!! thank you

  • @arupgope2676
    @arupgope2676 8 หลายเดือนก่อน

    your explanation is great. I have tried many dsa channels to follow. Then I find this channel. It is so great and underrated.

  • @chandankumar-ip5hf
    @chandankumar-ip5hf 4 หลายเดือนก่อน

    directly went into my head, able to write code after dry run explanation

  • @shwetakumari-ms2xg
    @shwetakumari-ms2xg ปีที่แล้ว +2

    watching your video for the first time, really liked your explanation. Would watch more of your videos :) thanks!

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

      Glad you like them!

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

    I watched so many videos n i could not understand the problem , after watching your video i finally understood it🥺🔥 the visualisation helped alot to understand

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

    For this problem i seen many videos, but this one was crystal clear and i never forget.
    Very Good Job Sir.

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

      So nice of you

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

    underrated channel

  • @srikanthchebrolu1091
    @srikanthchebrolu1091 ปีที่แล้ว +5

    I'm fan of ur way of teaching
    I learnt trees because of u
    Hope you start dp playlist like trees
    please ♥️😇

  • @ABDULKALAM-ig2dd
    @ABDULKALAM-ig2dd ปีที่แล้ว +2

    Sir I am big fan of your leetcode playlist, Regularly folllowing it ,Please continue doing more videos on leetcode ,Waiting for more Leetcode problems ❤

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

      i am adding more and more problems when I get time. Trying to cover important problems first :)

    • @ABDULKALAM-ig2dd
      @ABDULKALAM-ig2dd ปีที่แล้ว

      @@nikoo28 🤍

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

    your explanation was very simple. made me understand the problem.

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

    this is a gem of a video.

  • @SHREYASONAWANE-p5n
    @SHREYASONAWANE-p5n 9 วันที่ผ่านมา

    amazing explanation!!

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

    It was really a clean and clear explanation ❤

  • @JagadeeswarN-ur7of
    @JagadeeswarN-ur7of 2 หลายเดือนก่อน

    Great Explanation..thanks!!

  • @surenderreddy6294
    @surenderreddy6294 8 หลายเดือนก่อน

    fantastic brilliant,explanation sir,you deserve a lot

  • @ankitchaurasiya529
    @ankitchaurasiya529 8 หลายเดือนก่อน

    Just Wow...
    I understand after watching first time this video.

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

    Hi Sir, You are gem. I am learning from you a lot. Thanks, Sir for this Help.

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

      It's my pleasure

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

    Thanks sir love your intuition building 😍

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

    Cool explanation bhai...and an advice...keep content concise and outro subtle

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

      i try my best, but everyone has their own learning pace. for quick learners, i have chapter markers for faster navigation 😄

  • @usmanrangrez-cd7zj
    @usmanrangrez-cd7zj ปีที่แล้ว +1

    class Solution {
    public:
    bool canJump(vector& nums) {
    int n=nums.size();
    int maxJump=0;
    for(int i=0;imaxJump)
    return false;
    maxJump = max(maxJump,i+nums[i]);
    if(i>=n-1)
    return true;
    }
    return false;
    }
    };

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

    Excellent solution

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

    Bhai quality explaintaion h apka great baki TH-cam channel toh bs code padh dete h intuition toh batate v nhi h

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

      i like to focus on the problem solving, rather than the language. Languages will come and go. 😅, logic will stay

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

    Explanation is awesome 💯. But i was thinking is it possible to think this soln in an interview. The very first thing came to my mind was recursion. I found this while i was going through the discussion section of leetcode. Any advices on how to think this type of soln in an interview. Any suggestion is appreciated

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

      The only real answer is to grind these problems over and over. Just like a math class, the best way to get good is extreme repetition of practice problems. Also, sometimes you just won't get the problem in your interview and you need to focus on the next one and realize that this is normal and to not be discouraged. If you do enough problems to where you can solve even 10% of them easily and quickly, then you are able to get a job if you just get lucky enough to have those 10% of problems in your interview.

  • @Justforfun-u7j
    @Justforfun-u7j 5 หลายเดือนก่อน

    perfect explantion

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

    Best Explaination 👍

  • @workHolic-ne6eo
    @workHolic-ne6eo ปีที่แล้ว

    thats the video i was searching exactly

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

    i like how you explain with Animation

  • @catsadogga1651
    @catsadogga1651 8 หลายเดือนก่อน

    your explanation is super

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

    thank u sir ... for such a great explanation❣❣

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

    Dry run really helped! thanks a tonne!

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

      Great to hear!

  • @Paradox82827
    @Paradox82827 10 หลายเดือนก่อน

    Very good explaination!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

  • @Ayushkumar-co9mc
    @Ayushkumar-co9mc 10 หลายเดือนก่อน

    Best explanation ever

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

    amazing explanation, love the video.
    this is my algorithm before watching ur video, it only passed 120/170 test cases when i tried to submit it. So i just wanted to know if my approach to this question is definitely incorrect.
    class Solution {
    public boolean canJump(int[] nums) {
    int size = nums.length-1;
    int sum = 0;
    for (int i=0; i < nums.length-1; i++){
    sum += nums[i];
    }
    if (sum-(nums.length-2)>= size){
    return true;
    } else if (nums[0]>= nums.length-1){
    return true;
    } else{
    return false;
    }
    }
    }
    again, thx for the video

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

    i understand from u

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

    really helpful. Thanks a lot!

  • @LetsGo-ro1iq
    @LetsGo-ro1iq 10 หลายเดือนก่อน +1

    Great Video

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

    Great!! Thanks a lot

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

    outstanding explination plz try to do playlist for DP ur explination is 🥳

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

      I have a playlist on DP. Constantly adding more and more problems to it: th-cam.com/play/PLFdAYMIVJQHPXtFM_9mpwwQtIdzP6kxHS.html

  • @chocochips-as
    @chocochips-as ปีที่แล้ว +1

    Please add your chair also in your Recording Gear? Did you buy it from amazon ?

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

      Links in the description :)

    • @chocochips-as
      @chocochips-as ปีที่แล้ว

      @@nikoo28 i didn't find it.

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

      Chair is from Autonomous.

  • @Karan9.9
    @Karan9.9 ปีที่แล้ว

    very nice and clear explanation thanks !!!

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

      Glad it was helpful!

  • @Mr.NothingSpecial
    @Mr.NothingSpecial 11 หลายเดือนก่อน

    You're basically looking for the last reachable index at each iteration. That is not a greedy approach. Can you explain what do you mean by greedy approach?

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

      My greed is that I want to reach the last pointer from where I am standing

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

    sir your explaination is awesome... keep uploading more videos.

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

      thanks for your feedback, keep watching :)

  • @shubhamkumar-hx1fb
    @shubhamkumar-hx1fb ปีที่แล้ว

    i really hate kind of videos which doesnt tells the intuition why we are doing so.....there are many videos avl for this pblm and many of them are just doing the dry run of the code without telling the intuition behind their though process....
    But i am really thanks to you sir that you focused more on the intuition behind the code and have not just done the dry run 😌😌

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

      glad you liked it

  • @КарэнАкопьян
    @КарэнАкопьян ปีที่แล้ว

    Thank you for your work!

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

      My pleasure!

  • @chocochips-as
    @chocochips-as ปีที่แล้ว

    Very nice explanation, thanks, keep it up :)

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

    Incredible presentation as always. Would love to have you do a problem solving mindset tips and tricks.

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

      that is a really great idea, I will add it to my pipeline of upcoming videos

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

    Awesome explanation 🔥

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

    Super useful.💯

  • @subhashreesahoo5760
    @subhashreesahoo5760 8 หลายเดือนก่อน

    Hi.. Thanks for the vide, your explanation is really good and helpful.
    But I do have doubt here and a request while explaining , pls consider the code also .
    I feel like the explanation and the dry run code somewhere I am unable to understabnd(may be I need more practice but still..)
    Example-> while explaining you said to go back step from 1 , that is 0, you cant reach the destination => agree
    but in dry run code-> idx+nums[idx] , how are you bringing these terms, like how did you think its should be in this way , its like idx=7,nums[7]=0 and you are adding both 7+0=7, so i am not getting how your idea is to add idx+nums[idex].

    • @nikoo28
      @nikoo28  8 หลายเดือนก่อน

      If you have understood the explanation, try to write the code on your own. That is the only way you will learn. If everything else fails, only then refer to someone else’s code.

    • @subhashreesahoo5760
      @subhashreesahoo5760 8 หลายเดือนก่อน

      @@nikoo28 ok sure, Thank you, I will take your advice and implement the same.

  • @MeghaVerma-n9k
    @MeghaVerma-n9k 4 หลายเดือนก่อน

    Osm explanation thnks

  • @Shhhh-ni5jw
    @Shhhh-ni5jw 10 หลายเดือนก่อน

    With this approach, we never stop on the 0’s right? We are checking if somehow we are able to bypass

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

      Yes

  • @КарэнАкопьян
    @КарэнАкопьян ปีที่แล้ว

    Thank you, you helped me so much!

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

      You're very welcome!

  • @jk-sm6qr
    @jk-sm6qr 9 หลายเดือนก่อน

    Nice explaination, Thank you

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

      You are welcome

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

    could you please create a video for leetcode 2483?

  • @murugesh1915
    @murugesh1915 8 หลายเดือนก่อน

    Nice content

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

    You could have used your Jump Game 2 solution here. Both problems are almost same.

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

    Okay so, I don't usually comment but yeah this video was great.

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

      Thank you so much

  • @saisree04
    @saisree04 8 หลายเดือนก่อน

    Thanks a ton

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

    Take a value and show it by dry run so we understand a bit more Thanks

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

    thankyou so much sir its too good

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

    Thanks

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

    Best one

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

    great!

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

    Got itt👍

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

    brilliant

  • @AshishKumar-x5l8s
    @AshishKumar-x5l8s 11 หลายเดือนก่อน

    Its O(N**2) ?? Can anyone explain in case of DP

    • @nikoo28
      @nikoo28  10 หลายเดือนก่อน

      why do you want a solution with a poor time complexity?

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

    Understood

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

    Why we are calling optimal solution as greedy algorithm ?
    My perspective :
    If I see it, we have optimized our Iterative DP (Tabulation) by going to every index from last to first and asking if i can reach target or not.

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

    What if the second last element is zero?
    Let's dry run the provided array [3, 2, 1, 0, 4] through the given canJump method:
    Dry run:
    Initial State: lastElement = 4 (index of the last element).
    Iteration 1 (i = 3):
    i + nums[i] = 3 + 0 >= 4, which is less than lastElement. No update.
    Iteration 2 (i = 2):
    i + nums[i] = 2 + 1 >= 4, which is less than lastElement. No update
    Iteration 3 (i = 1):
    i + nums[i] = 1 + 2 >= 4, which is less than lastElement. No update
    Iteration 4 (i = 0):
    i + nums[i] = 0 + 3 >= 4, which is less than lastElement. No update
    Return: lastElement == 0, which is true.
    So, for the array [3, 2, 1, 0, 4], the canJump method returns true, indicating that it is possible to jump from the first element to the last element.
    Please explain I'm not able to understand the false case?

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

      you need to start from the last element, not the first one. watch the explanation that starts at 9:17

  • @pkeditsff8405
    @pkeditsff8405 3 หลายเดือนก่อน

    I didn't understand your code 😢😢😢😢

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

      This problem is pretty advanced if you are relatively new to coding. I'm at the end of a college-level data structures course and they included this problem in the homework and the professor even admits that most people at our level will not be able to solve these leetcode 150 problems and he said you are on the right track if you can at least come up with an idea of how to solve the problems that he is giving us.
      My point is, if you are just completely lost, that just means you need to look at easier problems and work your way up to this. I promise you that this will make sense later on if you just don't give up. You need to be working at your current level. Even though I understand this code, there are many where I wouldn't understand just like you. Look up the "zone of proximal development" and try to find out where your zone currently is and just work within there. Your experience here is perfectly normal and expected. Don't be ashamed if you have to go back to the very basics of coding for awhile.

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

    i actually tried this code and come across a wrong ans for [1] as it is reachable at any cost so i run the loop from nums.length -1 to 0 and that worked.... and thank you for this amazing solution i stuck on this for 3 hrs straight...