Permutations (LeetCode 46) | Full solution with backtracking examples | Interview | Study Algorithms

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

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

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

    when I was college I could not understand it. Spent hours, days reading about never understood it over a decade of time. I was so much depressed when some people understood it and I was not able to understand. But today I understood. Man , you best talent to explain concepts with 1) with simple example 2) simple words 3) with actual core concept instead of making people to mug up steps. Your awesome. There are many people from around the world who lack enough money to get good quality of education. Please keep doing Algo questions and leetcode questions. I also salute your parents for raising such patient and cool attitude, talking. Thankyou

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

    Most of people that makes the videos on the TH-cam don't actually understand the fundamental of the subject, hence why it is poorly explained and makes everyone else confused as well. You're clearly know your stuff very well. Thanks for sharing your knowledge with us.

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

    I watched 10's of videos on backtracking. Though I understood the logic, I wasn't able to put that into code. Finally, I made it and related this logic to phone pad permutations, permutations 2, subsets. Thanks man!

  • @saivineela7323
    @saivineela7323 23 วันที่ผ่านมา

    Your just amazing idk why people are not finding your channel but all i can do is pray for you to reach heights ,and yeah ofcourse i will share this channel thanks for helping us out

    • @nikoo28
      @nikoo28  22 วันที่ผ่านมา

      You're the best!

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

    finally a video where approach is explained rather than some pre-written code. keep it up.

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

      i really believe in understanding the logic, rather than just solving it.. :)

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

    Watched your videos on recursion, backtracking, and now this video. I think I am finally understanding backtracking now after hours of trying. Thank you for the very clear examples. Your section 'Using backtracking to find permutations' helped me the best!

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

    for sure this is the first time i have understood backtracking you have explained it better than in subsets video

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

    what simple easy explanation please don't stop making videos the way u explain its incredible TRUE LEGEND

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

    I spent hours on this and ended up here. This motivates me to solve more problems of this type!

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

    one of the most clear and great explanation on this problem, thanks.

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

    Thank you for creating such an amazing TH-cam channel! Your explanation on solving LeetCode problem with backtracking is incredibly clear and understandable. I've learned a lot from your video, and I'll definitely be following your channel from now on to learn new approaches and algorithms whenever I encounter challenging problems. Keep up the fantastic work!

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

      thanks for the support. :)

  • @coderoad3581
    @coderoad3581 9 หลายเดือนก่อน +2

    Really appreciate your efforts, man.

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

    This was fantastic! The thing that clarified it for me almost immediately was the tree diagram you gave in the beginning. This allows you to visualize the problem and solution. Great job!
    6, 14 -:

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

      Thanks for the lovely feedback.

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

    Thank you so much I spend 4 hours trying to find a good solution that explains with recursive tree. Found your video & I'm really happy... Thank you !

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

    Your Way Of Teaching Extreme Level And Simply Understandable

  • @SaurabhSingh-q4v
    @SaurabhSingh-q4v 8 หลายเดือนก่อน

    Best explanation ever ! Better than neetcode and all as well!

  • @udayrajvadeghar8555
    @udayrajvadeghar8555 8 หลายเดือนก่อน +2

    Thank you so much sir . A savior!!

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

    Thank you so much sir, very good explanation, Please sir, make such kind of videos.

  • @Goodday-nm7zp
    @Goodday-nm7zp ปีที่แล้ว

    I've been struggling to understand backtracking but this vid is 10/10 great explanation thanks so much!

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

      Great to hear!

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

    Very well explained!!! Keep it up.

  • @Aditya-wy4ci
    @Aditya-wy4ci 9 หลายเดือนก่อน

    Wow sir, what a great code and an excellent explanation..

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

    we do temp.remove(temp.size() - 1);
    because we remove the recently added number, so its going to be the last number in the temp array, for anyone wondering

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

    You made it very easy to understand

  • @TONY-ht5tf
    @TONY-ht5tf ปีที่แล้ว

    Excellent explanation, I finally understand backtracking. Thank you so much, sir!

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

    That was a masterclass. Many thanks!

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

    u are a godsend

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

    love you bhaiya your amazing solution as well as amazing approach

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

    Hi, would u further explain when u said "array of length n will have total of n! permutations" and "when n is the stack space that you are choosing"?

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

    best explanation out there

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

    I dont agree on one point here when you say in comment " // Go back to try", at 13:35 this is misleading term "and go back" as anyone can think this is backtracking. When you remove the element, that is when actual backtracking takes place. Calling backtrack method recursively is not when backtracking happens. When you remove an element from a list, that is when you backtrack to previous path and then you wither add or call backtrack again to remove more elements to backtrack further up the path in the tree.

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

    very very nice explanation

  • @010101dddm
    @010101dddm ปีที่แล้ว

    Excellent explanation

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

    please make full series on recursion , you are dammmmmm good bro

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

      gonna compile it very soon

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

    It was very well explained , thanks a lot :)

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

    You are the best

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

    simply the best

  • @celestialskies-covers
    @celestialskies-covers 3 หลายเดือนก่อน

    thank you soo much! u explained is so nicely ^_^

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

    Thank you brother

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

    thank buddy are you lot of help me'

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

    Great explanation sir.

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

      Thanks and welcome

  • @SaurabhSingh-q4v
    @SaurabhSingh-q4v 8 หลายเดือนก่อน

    Just one thing
    backtrack method is really for going back and considering different choice OR it is taken care by pop() and then incrementing for loop further?

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

      backtrack method kind of helps you to explore the complete state tree. Watch my video on backtracking to understand more

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

    Hi , you explained it very nicely.
    Just want to say that your text based explanation link is taking to the Longest common prefix problem and not this permutations one , so please correct it , if you can :)

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

    Sir a little correction. You said it will add 1 then backtrack and remove 1 and add 2 and then repeat to add 3. but according to your code it will first add 1 and then find out all possible permutations with 1 and then remove 1. I tried dry running it bcz i got confused that how it is adding 1 and then removing it before finding all the possible combinations. Am i correct?

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

      Yes, backtracking is DFS, it will first go deep on one node then will backtrack when all options are over and continue to next branch.

  • @shabazalam2374
    @shabazalam2374 6 หลายเดือนก่อน +2

    Thanku bhai

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

    please make video for "smallest good base --> leetcode =483"....🙏🙏🙏🙏

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

      that is not a good quality problem. watch this video on selecting problems: th-cam.com/video/PcolzuB-fRc/w-d-xo.html

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

    I have a question, wouldn’t the time complexity of contains method be counted which is O(n)?

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

      With a hashset, the contains method works in O(1)

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

      For an ArrayList, the complexity of the contains() method is O(n).

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

    I'm very weak in backtracking and dp, How can i become good in those things?
    what are the basic things to learn for becoming good in backtracking and dp?

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

      practice, practice, practice......and a lot lot of practice...there is no other shortcut my friend. :)

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

    Good one

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

    one question, how do one make sure that after selecting one element from array, the previous and next numbers are included? loop makes sure next numbers in array are included. how are previous numbers from selected array are included in backtracking?

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

      that is how recursion and backtracking work. when a function call ends, it will go back and resume where the recursive call started.
      Bactracking: th-cam.com/video/51Zy1ULau1s/w-d-xo.html
      Recursion: th-cam.com/video/FTTHkmnvzlM/w-d-xo.html

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

    thanks!!

  • @starstuff-lj7xu
    @starstuff-lj7xu 19 วันที่ผ่านมา

    i got to know how to implement backtracking in code

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

    Thanks!

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

      you are welcome!!

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

    in last video of subsets i did not understand how i we got [1,3] please do write the recursive tree once

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

      In subsets, if you watch 8:29...we get a state of choosing the 2nd element. Extend it for the 3rd element at 8:52

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

    rest all r good

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

    Bro make videos to solve matrices problems plzz.

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

      I will add them to my pipeline. Do you have a particular problem in mind?

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

      i understood the question but dont no the code.plzzz exapin it broo😢😢

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

      @@pradeeps9633 which part are you facing a problem with? May be I can clarify even more.

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

      @@nikoo28 bro i have no idea to solve matrice type question.Every time i see it looks like a new one.

  • @AkashkumarYadav-r4b
    @AkashkumarYadav-r4b 3 หลายเดือนก่อน

    NIce

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

    Unclear explanation, we are not going back every step. We simply use DFS alhoritm, which going back only when we hit the bottom of tree. So we going back when one leaf of permutations is constructed .

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

    Please fix your audio

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

      which part did you face a problem with?

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

    volume was really very low

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

      Sorry for the inconvenience…I have fixed it in my recent videos.
      Please check them out and let me know if it is still an issue.

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

    watch 10:05 see face

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

    tempList.contains(number) - This is O(n) operation