Recursion - Array Questions (Theory + Code + Tips)

Поделиться
HTML-код
  • Опубликовано: 27 ноя 2024

Комментарии • 454

  • @KunalKushwaha
    @KunalKushwaha  4 месяца назад +3

    DSA + interview preparation playlist: ruclips.net/p/PL9gnSGHSqcnr_DxHsP7AW9ftq0AtAyYqJ

  • @surajgupta3267
    @surajgupta3267 3 года назад +412

    This man is providing quality content for free...far better than the paid ones ♥️

    • @teslatestingwala5019
      @teslatestingwala5019 2 года назад +6

      He gets Powerfull blessings

    • @jayakumar9976
      @jayakumar9976 2 года назад +7

      i can personal vouch for it!!..

    • @logeesh2009
      @logeesh2009 2 года назад +2

      Agreed

    • @er.albertaddy2386
      @er.albertaddy2386 2 года назад +7

      but many important topics mentioned in website are missing, say maps, trees etc. hes also not interested to share.

    • @devincodes5218
      @devincodes5218 Год назад +1

      No lies... Plus making seemingly hard concepts easy to grasp.

  • @vedantyt2451
    @vedantyt2451 3 года назад +41

    Sometimes it's that aura of Kunal which makes us comfortable in getting the hard concepts easily.

  • @erharshphysics3835
    @erharshphysics3835 2 года назад +60

    32:00 😁😁 "You've skipped the course I can't help you. Go watch the video properly" and then you says "ok, I'll repeat it."😂

    • @veeee5577
      @veeee5577 3 месяца назад +2

      he's the best teacher he just wants his students to not get confused

  • @budgetdapr
    @budgetdapr 3 года назад +128

    Been going on and off studying CS because I was stuck on recursion. Used to stop studying in a matter of minutes since I couldn't understand anything related to it. Watched 3 videos of your RECURSION PLAYLIST and now recursion is a cakewalk to me. The best 3-4 hours I've ever invested, not even capping

    • @KunalKushwaha
      @KunalKushwaha  2 года назад +25

      Glad I could help

    • @Kondlapudi
      @Kondlapudi 2 года назад +4

      I agree!!

    • @panchanansahoo1463
      @panchanansahoo1463 2 года назад +5

      Thanks kunal for all the videos .But please upload remaining videos after stack and queue as well

    • @meetabhashiniparida9417
      @meetabhashiniparida9417 2 года назад +1

      @@KunalKushwaha in 1:03:42 why is it returning [3, 4] and not [4, 3]....since its returning from the stack's top, it should first add 4 into the list n then 3 right?

    • @ujjwalagnihotri5001
      @ujjwalagnihotri5001 Год назад

      @@meetabhashiniparida9417 if you haven't still figured out yet, then because call for index =3 will happen first and it will get added in arraylist.

  • @albin6126
    @albin6126 Год назад +5

    your non formal and more friendly way of teaching feel very connected and its like you directly talking to a person

  • @vittalmaheshwari5348
    @vittalmaheshwari5348 3 года назад +59

    Hey Kunal it has been a superb journey with you
    I got a job offer from Microsoft
    This is all because of your videos and your hardwork
    Thank a lot Kunal
    I will support you till my last breath

  • @subhankarkanrar9494
    @subhankarkanrar9494 9 месяцев назад +11

    If anyone watches the first time, i will say , please see all the videos carefully previously and watch the full video. Don't skip anyone

    • @bruvhellnah
      @bruvhellnah 6 месяцев назад +1

      bro did you understand recursion completely from his videos?

  • @rakeshbabu4790
    @rakeshbabu4790 3 года назад +77

    Increase the frequency of dsa videos Kunal🙏🏻🙏🏻🥺🥺

  • @projecthope2836
    @projecthope2836 2 года назад +12

    Thanks Kunal, you're really a rare gem, I have understood recursion by just watching your contents

  • @ashaysaoji2273
    @ashaysaoji2273 8 месяцев назад

    Excellent explanation for returning a list without passing an argument!
    Starting Timestamp: 49:47

  • @kushalappabe1993
    @kushalappabe1993 20 дней назад

    The part where this video leads to explaination of passing arguments as parameters avoiding multiple object creation made me feel I have to genuienly thank you! Highest of respect and Highest of Regards for what you have done. Thank you!

  • @aashashanmugam
    @aashashanmugam 7 месяцев назад +1

    This series is hands down THE best videos on Recursion!! Thanks so much Kunal!!

  • @Virtualexist
    @Virtualexist 5 месяцев назад +3

    Mannnn, no matter how much striver, ye bhaia wo bhaia teach N queen or any difficult problem and boast about it.. this man teaches you what makes you solve these problems by self. It is not about solving one problem, it is about learning to solve many such problems.

    • @subhamsoni3853
      @subhamsoni3853 5 месяцев назад +1

      striver's playlist is complete unlike his

    • @Virtualexist
      @Virtualexist 5 месяцев назад

      @@subhamsoni3853 Ah I seee. I completed from Aditya Verma and i come back to this to clear basic doubts.

    • @AshirwadSarmah
      @AshirwadSarmah 3 месяца назад

      @@subhamsoni3853 is this playlist really not complete? what is he missing?

  • @maheshgayakwad4227
    @maheshgayakwad4227 Год назад

    bhaiya aapne bola tha ki recurssion me problem aayegi per mujhe to bahut easy lg raha hai ye....
    maybe all because u are such a good teacher .. thakyou

  • @ashisbhowmik348
    @ashisbhowmik348 3 года назад +9

    You deserve a Big shoutout ❤️❤️❤️ for providing this type of quality education ..💯💯💯

  • @Helly_Patel
    @Helly_Patel 2 года назад +19

    Thanks for teaching us like no one did till now!! One small request, please make lectures on dynamic programming as well!!

  • @vigneshvijayakumar-ty4ob
    @vigneshvijayakumar-ty4ob 4 месяца назад

    Hey Kunal, you are such an amazing tutor. You think about all the perspective of watcher, like where they will get doubt and you are explaining it repeatedly without hesitation. Thank you so much Kunal.

  • @riyazahmadkhan9490
    @riyazahmadkhan9490 3 года назад +15

    Understanding recursion helping me to understand other data structures in detail and fast too
    Thank you so much Kunal for providing quality content

  • @ishanvyas2178
    @ishanvyas2178 4 месяца назад

    when you understand the thing he is explaining totally, It feels so so satisfying

  • @veeee5577
    @veeee5577 3 месяца назад

    thanks for taking so much time for making this course its worth thousands of dollars and yet you made it free may god bless you.

  • @akashnag6459
    @akashnag6459 Год назад +1

    No one explained Recursion as easy as you. Thanks a lot. A lot of paid courses doesnt explain Rescursion as you did.

  • @webhelpbyvarghab
    @webhelpbyvarghab Год назад +2

    *C++ Code for returning vector without passing answer vector to the recursive function*
    vectorsolve(int target, vectorarr, int index){
    vectorres;
    if(index==arr.size()) return res;
    if(target==arr[index])res.push_back(index);
    vectortemp = solve(target, arr, index+1);
    if(!res.empty()) temp.push_back(res[0]);
    return temp;
    }
    int main(){
    vectorans = solve(4, {3,6,8,9,4,2,4}, 0);
    for(int x:ans){
    cout

  • @AftabAlam-gh1nh
    @AftabAlam-gh1nh 2 года назад +2

    My code for question at 3:18
    public static boolean Check(int arr[]) {
    int index = 0;
    return helper(arr, index);
    }
    private static boolean helper(int arr[], int index) {
    if(index==arr.length-1) {
    return true;
    }
    else if(arr[index]>arr[index+1]) {
    return false;
    }
    return helper(arr, index+1);
    }

  • @entity2.089
    @entity2.089 Год назад

    Guess what i checked every dsa course, really couldn't find anything better than this and anyone better than you kunal❤❤❤❤❤❤❤

  • @sharansukesh5542
    @sharansukesh5542 3 года назад +20

    Insane teaching man
    I was able to come up with my own solution in one line for linearsearch
    return index == arr.length ? false : arr[index] == target || linearSearch(arr, index + 1, target);

  • @yaswanthkosuru
    @yaswanthkosuru 2 года назад

    these playlist of recursion
    deserve million of views

  • @manashbarman273
    @manashbarman273 2 года назад +3

    Bro please add the tree and graph videos as well.. I am 4 yrs experience at a service based org. But I must say you content is top notch in terms of explanation. I became fan of yours

  • @chinmayatewari7589
    @chinmayatewari7589 Год назад +7

    The level of dedication and the quality of content💯.... TONS OF RESPECT AND SUPPORT ❤

  • @samuelmanukonda286
    @samuelmanukonda286 2 года назад +4

    One of the best courses I have come across so far. You are doing an incredible job.
    Just a suggestion.
    People who are having issues understanding the last return statement, try assigning a local variable to it and then return it, so you can see the stack getting cleared after each function call which makes it easier to understand.

  • @satnamsingh3801
    @satnamsingh3801 Год назад +2

    Your courses are the reason I bought RUclips premium😊

  • @abdullahalosaimi8506
    @abdullahalosaimi8506 Год назад

    Thank you for the amazing work you do. Another solution for question 5 is returning an empty list when the index is greater than or equal to array length instead of creating a new list in every call.
    def find_all_indcies(target, index):
    if index >= len(nums):
    return []
    results = find_all_indcies(target, index + 1)
    if nums[index] == target:
    results.append(index)
    return results

  • @gurjargaming863
    @gurjargaming863 Год назад

    Bhaiya you are great aapki wajah se mera recursion itna best hoo gaya he ki me aab koisa bhi question bhot aaram se krr leta huu

  • @dipeshjadhav1546
    @dipeshjadhav1546 2 года назад +18

    Hats off to the efforts this guy has put in making these videos, Wish we had teachers like this in our collage. I wish you all the luck man and wish all your dreams come true.. Contributing to the better world. Thank you so much man

  • @ShivamPandey-jc8rh
    @ShivamPandey-jc8rh 2 года назад

    never thought these concepts would be so easy to understand bhai agar yhi videos khi hindi me upload maar diye hote to ajj tabahi ho jati cse field me .

  • @ujjwalkumar7267
    @ujjwalkumar7267 3 года назад +1

    Hats off to his calmness, you are such a brilliant tutor, I am new to this channel, going to watch all the videos and learn different concepts..!!!

  • @memestok893
    @memestok893 2 года назад +2

    44:38
    code in Python
    def LiS(arr,target,index,NewList=[]):
    if index==len(arr)-1:
    return NewList
    if arr[index]==target:
    NewList.append(index)
    return LiS(arr,target,index=index+1)
    print(LiS([4,2,3,4,4,4,5],4,0))

    • @ayushkumar2418
      @ayushkumar2418 2 года назад +1

      Hey @Memestok, did you managed to write 1:03:10 code in python ?

  • @twi4458
    @twi4458 3 года назад +1

    November 7, 2021: 101,000 subscribers. Thank you Kunal

  • @vikaskumarnitrr
    @vikaskumarnitrr 3 года назад +8

    By the time I had subscribed to your channel, I always wait for your next upload just a little request, just increase the speed of uploading videos.
    love you 3000 Kunal bhaiya

  • @jknair0
    @jknair0 3 года назад +2

    You are doing Gods work! So much knowlege with so much clarity for free. Thank you Kunal!

  • @suryaganeshpindiprolu472
    @suryaganeshpindiprolu472 2 года назад

    This man is making me fall in love with coding especially recursion

  • @Tomharry910
    @Tomharry910 2 года назад +1

    Best way to learn recursion anywhere. Thank you so much Kunal Sir 🙏

  • @sujithsaikalakonda4863
    @sujithsaikalakonda4863 2 года назад +4

    Hey, Kunal. Great Explanation. Especially the way you explained 'Return the list without passing the argument' was awesome and clearly understood. Great Work

  • @ridoychandradey8337
    @ridoychandradey8337 2 года назад +1

    So many things I have learnt so far. This is the best recursion content among all videos in youtube. Thanks a lot KUNAL.

    • @JodFlashYT
      @JodFlashYT 2 года назад

      Bro did you have handwritten notes of kunal it's giving me error in github 🥲 plz reply if you have

    • @ridoychandradey8337
      @ridoychandradey8337 Год назад

      @@JodFlashYT I have few of these. But not all. When I was taking the notes my handwriting was very messy as well. If you want to know anything then you can tell me and I will give you the fb or linkedin profile link.

  • @jamespeterson7824
    @jamespeterson7824 2 года назад +2

    Recursion has been explained very nicely ,simple and understandable manner... Good work 🙂

  • @thanushkrishna2041
    @thanushkrishna2041 2 года назад

    One of the take aways is how to add a result of child recurrisve call to parent recurssive call and carry it forward adding again and again to a parent call !! New concept.. Liked your presentation, thank you !!

  • @charanteja4619
    @charanteja4619 Год назад +1

    Bro simply increasing competition in the Industry!

  • @rishabhrawat8197
    @rishabhrawat8197 2 года назад +4

    you were right now i'm able to solve complex questions in my finger tips

  • @pradeepella
    @pradeepella 2 года назад +2

    Man the dedication ur putting teach all these and ur notes is very much helpfull and ur teaching this for free hatsoff for u, ur best than many other paid courses at present . God ur kunal

  • @imranjamshaid8708
    @imranjamshaid8708 Год назад

    what a Quality Lectures.I never seen on RUclips

  • @poetryiscodingdecoding7965
    @poetryiscodingdecoding7965 2 года назад

    One of the finest content of the globe today

  • @codeman0017
    @codeman0017 Год назад

    yay! just completed the vedio,now I am confident in solving recursion problems

  • @YashwaniVerma-q5s
    @YashwaniVerma-q5s 10 месяцев назад +2

    I can't thankyou enough for this amazing lecture. I understood the whole lecture.
    If you can make a lecture on DP it will be a big help.

  • @sauravagrawal5013
    @sauravagrawal5013 Год назад +2

    Simpler code at 1:03:08 is -
    static ArrayList findAllIndexWithout(int[] arr, int start, int target){
    ArrayList arrlist = new ArrayList();
    if(start==arr.length){
    return arrlist;
    }
    // this will contain answer for that function call only.
    if(arr[start]==target){
    arrlist.add(start);
    }
    ArrayList ansFromBelowCalls = findAllIndexWithout(arr, start+1, target);
    // if current arrlist has no value then return the previous ArrayList returns.
    if (arrlist.size()==0){
    return ansFromBelowCalls;
    }
    // if current arrlist is not empty then add all the elements from previous arraylist returns to the current arrlist
    // and return the arrlist.
    else{
    for(Integer i: ansFromBelowCalls){
    arrlist.add(i);
    }
    return arrlist;
    }
    }

  • @shivakumarkonga1532
    @shivakumarkonga1532 9 месяцев назад +1

    Classes are Extremely well......😍😍

  • @abishekalwis3379
    @abishekalwis3379 5 месяцев назад

    in the Q 01, sometimes there will be cases where index and index + 1 will have the same value. for that case make sure to use this arr[index] arr[i + 1]){
    return false;
    }
    }
    return true;
    }
    // using recursion
    public static boolean isSortedRecursion(int[] arr, int index){
    if (arr.length - 1 == index) {
    return true;
    }
    return arr[index]

  • @beka3304
    @beka3304 Год назад

    I think it's valid also: static List findAllIndex(int[] arr, int target, int index) {
    List list = new ArrayList();
    if (index == arr.length) {
    return list;
    }
    List belowCalls = findAllIndex(arr, target, index + 1);
    if (arr[index] == target) {
    belowCalls.add(index);
    }
    return belowCalls;
    } p.s but reversing indeces

  • @adilwahla544
    @adilwahla544 Год назад

    THANK YOU KUNAL for such an amazing content

  • @aayushojha3088
    @aayushojha3088 3 года назад +12

    Mann you teach so awesome!!!!!!!, i was able to do the subsequence question by passing arraylist in the argument by my own because i had watched you arraylist video and as you keep on telling make the tree so i did that and was able to solve it , so happy mann!!

  • @mrrishiraj88
    @mrrishiraj88 3 года назад +1

    Good Day!
    Welcome back! Glad to see n hear you back!
    🙏👌👌

  • @PriyaSingh-zb5wn
    @PriyaSingh-zb5wn 7 месяцев назад

    Thank you for another excellent lecture. It helped me in getting better at recursion .You really know what you are doing.

  • @spryzenplays2500
    @spryzenplays2500 3 месяца назад +2

    it's like i am sitting in front of Kunal and he can see my expressions & he is scolding me that why are you not getting these simple concepts😂

  • @siddharthdang1521
    @siddharthdang1521 3 года назад

    concepts explained so well that I would remember for my lifetime

  • @animeshrose
    @animeshrose 2 года назад

    Recursion is a cakewalk now! you have my support till the end of times.

  • @sofiyarao815
    @sofiyarao815 2 года назад

    guruji MIND IS BLOWN!

  • @dark.violin
    @dark.violin 11 месяцев назад

    Your explanation is really great and I have so much fun watching your videos. Thank you for making a subject like Recursion understandable and entertaining for me.

  • @bhanwarlal6526
    @bhanwarlal6526 3 года назад +5

    3 comment...
    But currently I AM doing sorting Assignment.....
    I AM coming recursion as soon as ✨🤩🤩
    Super bro...

  • @meetsoni1938
    @meetsoni1938 2 года назад +1

    The explanation of last question is amazing 🤩🤩💯💯

  • @cb-99-46
    @cb-99-46 2 года назад

    now its getting easier for me to solve recursion problem ... thanks ...

  • @FaizanFurqanAhmad
    @FaizanFurqanAhmad 10 месяцев назад

    Honestly :-> Your teaching way is fantastic and advance level.
    You are the real example of what's the knowledge we can get from youtube 💯 ❤
    Love uhhh bro ❤

  • @siamgithub7332
    @siamgithub7332 2 года назад

    fun isSorted(arr: Array, prev: Int, next: Int): Boolean {
    if (next == arr.size) return true
    if (arr[prev] > arr[next]) return false
    return isSorted(arr, prev + 1, next + 1)
    }
    Can i call this as a pure recursion ? i mean when kunal said that question, immediatly this solution came in my mind

  • @ramanjain7284
    @ramanjain7284 Год назад

    Great explanation especially from 52 minutes onwards concept

  • @leecha9512
    @leecha9512 3 года назад +1

    Awesome explanation and tutorials!!! You made Data Structures, Algorithms, and Recursion dead easy!!!! God bless you beta...

  • @Luffy_2804
    @Luffy_2804 Год назад

    last question
    static int search(int[] n , int start , int end , int target){
    int mid = start + (end-start)/2;

    if(start==end && n[start]!=target) return -1;
    if(n[start]==target) return start;
    if(n[mid]==target) return mid;
    if(target

  • @mayank3411
    @mayank3411 Год назад +1

    A really nice work done by you brother...Really a best video of Recursion...

  • @suhaibalam1040
    @suhaibalam1040 Год назад

    you made my life easy man. May the almighty GOD guide you to the right path.

  • @manishkasera8584
    @manishkasera8584 3 года назад +2

    Return the arrayList without passing in the parameter ..
    Blow my Mind BRuuuuuuuuuuuuuuuuuuuuuuuuuuuuhhhhhhhhhhhhhhhhhhhhhhh.#3000

  • @as_if
    @as_if Год назад

    important parts:
    41:16 khub sundor
    49:47 (56:00)

  • @coder_aditya9567
    @coder_aditya9567 3 года назад +1

    Liked the video before watching...coz I know it's amazing ❤️❤️

  • @lucifer.morningstar9523
    @lucifer.morningstar9523 Год назад

    1:01:34 Instead of creating list for each call we can return a clone of answer list and before returning we have to clear the answer list

  • @amruthaa5876
    @amruthaa5876 3 года назад +1

    WOWOWOW I understood the basics well now :D

  • @anirudhchakravarty6373
    @anirudhchakravarty6373 2 года назад +7

    Between rotated binary search and recursive binary search which approach do we use in an interview? Love this course btw. Would love to see sliding window, 2 pointer, trees and graph questions

  • @shafaq-here
    @shafaq-here 3 года назад

    Debugging makes learning easier .
    Thanks for the tips .

  • @jashhinger442
    @jashhinger442 2 года назад +2

    See you later byeee, at 58:50 that's was so funny🤣🤣🤣 love the way you teach..❤❤🚀🚀

  • @shrirambalaji2915
    @shrirambalaji2915 Год назад

    Thank you so much Kunal, You made this so simple.

  • @foyzanahmed4091
    @foyzanahmed4091 Год назад

    array inside function body is the best part of the video;

  • @sheikhmkrifat7749
    @sheikhmkrifat7749 10 месяцев назад

    Hats off kunal! take love from Bangladesh!

  • @Videolyy
    @Videolyy Год назад

    Best playlist for recursion🙌..

  • @Content_creater_entertainment
    @Content_creater_entertainment 3 месяца назад +1

    This is what we need

  • @himanshu_1422
    @himanshu_1422 3 года назад +10

    Bhaiya please complete asap these course can't wait for more videos

    • @harishs2281
      @harishs2281 3 года назад +2

      Yes kunal plz

    • @saibrinda8762
      @saibrinda8762 3 года назад +3

      Yes my interviews are on the way 😶this is only hope for coding rounds...thanks for so far🙏

    • @prahmodhr3679
      @prahmodhr3679 3 года назад +2

      Yes kunal pls finish the bootcamp asap

    • @brocklesnar4288
      @brocklesnar4288 3 года назад

      No kunal bhaiya shouldn't hurry complete it fully

  • @gunjangoyal6028
    @gunjangoyal6028 2 года назад +2

    I was the person who didn't understood recursion and i left my DSA in between.. but now, after i watched your videos, its clearly understandable and i am able to make concepts on my own.. thanks kunal 💙 you deserve more success ✨ free content of Kunal>>>>>>> any paid courses.

  • @faizanshaikh3270
    @faizanshaikh3270 3 года назад +3

    Do the OOP video ASAP. Because lots of courses do the oop in early part of the course.

  • @adityagarud3218
    @adityagarud3218 2 года назад

    static ArrayList findAllIndices1(int[] arr, int target, int sIndex){
    if (sIndex == arr.length)
    return new ArrayList();
    ArrayList list = findAllIndices1(arr, target, sIndex + 1);
    if (arr[sIndex] == target)
    list.add(sIndex);
    return list;
    }

  • @immayurpanchal
    @immayurpanchal 2 года назад

    Hey Kunal. Watched your Level 1 Questions video on Recursion and was able to solve one interview questions that I was asked in my interview. Unfortunately, I watched the video after the interview. But no worries. Really the way you're solving questions and explaining the thought process is really really beneficial. I also want to tell you that in the video you sometimes tell that it's too easy and doesn't feel like doing it but still you write the code and explain it. Please do that. It seems too easy for you but it's too difficult for people like me who are not that good at recursion. As you've solved those dumb questions and explained them. Hence, I was able to do some other questions also. This is helping me how to think in recursion. You're doing a fantastic job man! Excited to see your DP, Graph, Tree videos. ❤
    I'm happy to tell you that you're not like other RUclipsrs and share incomplete knowledge. Kudos to your hard work ☮ 😃

  • @somyarana8869
    @somyarana8869 Месяц назад

    Literally it's amazing 🤯

  • @sagarmore9425
    @sagarmore9425 2 года назад

    Kunal is like, this is already covered this topic in the last video please check it out. I am not gonna teach you again.
    But he tries to teach that topic again, at least in short. :D
    Kudos to your efforts man.

  • @ArunKumar-ut4rq
    @ArunKumar-ut4rq 11 месяцев назад +1

    personal reference - 01:04:00

  • @nikitajaiswal9112
    @nikitajaiswal9112 2 года назад

    My solution for check sorted array problem
    Def check(nums, i):
    If len(nums) ==i:
    Return True
    If nums[I]

  • @Content_creater_entertainment
    @Content_creater_entertainment 4 месяца назад +1

    Thank you man❤

  • @harshvardhanjha8724
    @harshvardhanjha8724 Год назад +1

    I am not joking I don't know JAVA (only C++) still his explation are so accurate and the tips and theory this guy gives are so good .One of the best recursion playlist I have seen so far .Thanks Kunal for explaining in so much detail and giving so much time in this playlist .