Remove K digits | Build lowest number | Leetcode

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

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

  • @nishanksoni7120
    @nishanksoni7120 4 года назад +80

    You are doing too much hard work dude.Wish you best of luck for your future endeavours.

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

      Thanks :)

    • @gracioussaxena8318
      @gracioussaxena8318 4 года назад +3

      Did you just fire the guy lol
      Great job though Tech Dose, well explained!

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

      Hey there, I am from year 2022, I came back in time to give you good news that ,Surya sir(tech dose founder) has joined Google.🥳

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

      @@nirajgusain1452 wow ! 🎉

  • @fullysimplified7139
    @fullysimplified7139 3 года назад +17

    Can't be explained better than this... Million times thanks for making these questions so simple :)

  • @bharathik6479
    @bharathik6479 4 года назад +80

    Wonderful way of explaining the algorithm behind the program. Most channels only explain(show) the code. Please keep up this great work. Please do mostly asked Leetcode medium questions. Will be a great help. Thanks a lot.

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

      Welcome :)

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

      Sorry to be off topic but does any of you know of a way to log back into an Instagram account..?
      I stupidly forgot the account password. I would appreciate any tips you can give me!

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

      @Dallas Gannon instablaster :)

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

      @Johnny Zyaire I really appreciate your reply. I found the site thru google and im in the hacking process now.
      Takes quite some time so I will reply here later when my account password hopefully is recovered.

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

      @Johnny Zyaire it did the trick and I now got access to my account again. Im so happy!
      Thanks so much you saved my account :D

  • @blynch2496
    @blynch2496 4 года назад +15

    Perfect, clear explanation to a problem that I've been stuck on. Thanks so much!

  • @dayanandraut5660
    @dayanandraut5660 3 года назад +13

    One of the best intuitions I have ever seen. I love the way you take examples to derive the logic. Keep it up. And also thanks for delivering such a quality content on coding problems. You just earned a subscriber.

  • @amritanshu83
    @amritanshu83 4 года назад +7

    Very nice explanation better than other explanations out there which just throw terms like greedy etc. Giving concrete examples and explaining the algo through them makes it much easier to understand.

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

      Yes....term confuses students 😅

  • @AmanShukla18031992
    @AmanShukla18031992 4 года назад +23

    The explanation was really awesome bro. Gave a whole new perspective to look at numbers. Really appreciate the effort. Sincerely, thank you.

  • @sundeep1501
    @sundeep1501 4 года назад +3

    Your explanation is really good and with O(N) which is better.
    I solved this problem with different approach and I think the time complexity id O(N * k). Is that correct?
    Step 1: Parse the string left to right.
    Step 2: For each current char at i, See if there is a char lesser than the current char in window [i+1 to i+k]. If found, decrement the k and skip the char. Otherwise add to the result.
    Here is the code:
    public String removeKdigits(String num, int k) {
    if(num == null || num.length() == 0 || num.length() 0){
    builder.delete(builder.length()-rem, builder.length());
    }
    String res = builder.toString();
    return res.length() == 0? "0" : res;
    }
    int getMinIndex(char val, int start, int end, String num){
    if(end >= num.length()){
    return -1;
    }
    for(int i = start; i

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

      your time complexity is N^2 and space complexity is also N

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

    This is absolutely mind blowing. Couldn't think of this approach.. 😭😭😭 Also so many edges cases to handle... But great great video.

  • @shivangshukla4243
    @shivangshukla4243 4 года назад +5

    God level explanation bro. Been watching your videos since a month and they are all brilliant. Will definitely donate once I land a job :)

    • @techdose4u
      @techdose4u  4 года назад

      Thanks for your appreciation.

  • @hitenarya4987
    @hitenarya4987 4 года назад +6

    this channel should have millions of subs.

    • @techdose4u
      @techdose4u  4 года назад

      Thanks bro :)

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

      This channel work so hard i wish this channel should have millions of subscribers

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

    Awesome explanation. You’re doing a great job in helping the community.

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

    I wish I could like this video more than once. Thanks for your explanation. You are good!

  • @0anant0
    @0anant0 4 года назад

    Awesome explanation! Thanks! As per the explanation, just remember this: Remove previously seen peak elem to flatten the curve. When graph dips, we have already seen a peak.

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

    Pretty good explaination bro !
    I was able to solve it in my mind but couldn't put it in code .
    DIdn't think about first-come maxima approach .
    Cheers (y)

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

    nice .. this is a good explanation. the good part is you are telling more examples that make more sense for everyone.

  • @sameera2426
    @sameera2426 6 месяцев назад

    It was such a great explanation. Half way through the video and I knew what to do. Keep up the good work.

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

    Your explanations are best I have found on RUclips.

  • @xapeuuu
    @xapeuuu 4 года назад +6

    Glad i got the stack approach by myself even though my code was way messier than yours ^^

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

      Many were not able to solve this. Glad that you did :)

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

      Can you please explain why in line 15 he consiered only when stack is not empty?

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

    kya baap tarike se sikhaya bhai. Mja aagya. Thanks man

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

    An inspiration for anyone who wishes to learn or teach DSA

  • @agileprogramming7463
    @agileprogramming7463 4 года назад +4

    Initially I thought this is a DP problem because I thought we have to consider all possible cases and the do the DP thing... but this approach is really wonderful.

    • @techdose4u
      @techdose4u  4 года назад +1

      It could have been dp problem if you thought about recursively solving this.

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

    wonderfull way of explaining..

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

    Dude, congrats on 100K. You deserve it

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

    Great explanation sir, Thanku so much

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

    One thing to notice here if the elements keeps on increasing as he said it will form the smallest number possible that means we will have the higer value digits at the end so we can remove them easily with the help of the stack

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

    Nice content.
    Keep on making such videos

  • @anshimagarg9661
    @anshimagarg9661 4 года назад +1

    I'm so happy that I found your video. I understood it very well. Thank you very much sir.

  • @ujjvalsharma5055
    @ujjvalsharma5055 4 года назад

    wonderful video. Great explanation of code and intuition. Keep up the good work

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

    Great explanation brother. Understood each and every step. Keep doing great work.

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

    great explanation, easy to follow and understand. thanks

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

    Sir , the way you explain is absolutely amazing !! . Wish i had a teacher like you . Greatwork Sir !! :) :)

  • @Darshil1771
    @Darshil1771 4 года назад +1

    Became fan of your explanation! Much much appreciated!

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

    Amazing intuition explained. Thank you

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

    I got a goodone idea to solve this say we have the number 71382 and k=2 so what we can do is that to divide the digit by its index number, index number must be starting from 0 ie for 7 index number should be 1 not 0 and so on,, then after we got the list of the divided result we can just chose the minimums possible and then we can include only those in return value, me testing this got all correct result for almost all cases

  • @AyushRaj-gf2ce
    @AyushRaj-gf2ce 4 года назад +1

    extremly datailed explanation..thank you so much!!

  • @kaichenghu3826
    @kaichenghu3826 4 года назад +1

    Very good explanation and visualization

  • @rajnisharyan6361
    @rajnisharyan6361 4 года назад

    hey, can you please tell me about how you are wrinting are you using digital pen and which software you are using for writing

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

    great job, thanks for good quality of explanation

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

    Wat an explanation, absolute gem

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

    starting the day with your video

  • @ninehoursful
    @ninehoursful 4 года назад +1

    How does one come up with such intuitive solutions? I tried to come up with multiple solutions but was not even close to this solution.
    I tried to solve this question using priorityQueue, HashMaps, expanding from center of the string.

  • @culeforever5408
    @culeforever5408 10 месяцев назад +1

    great explaination

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

    Simple and perfect explanation!

  • @SaiKiran-dy6ke
    @SaiKiran-dy6ke 4 года назад +2

    Man, wonderful explanation.. Highly appreciated.. 💞💞

  • @crankyinmv
    @crankyinmv 4 года назад +1

    Thanks. I hate your 4's but the overall the video was quite helpful.
    I solved 402 with a different approach, but wanted to see how the stack based approach worked. No I know.

  • @hapysethi1306
    @hapysethi1306 4 года назад +1

    Bhai thanks alot for sharing
    Algo
    Code and
    Explanation

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

    This is an amazing explanation! Nice question, thanks.

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

    Best concise explanation

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

    Sir ji aap great ho. Is there any way we can contribute even a little towards your hard work ?? Sir please let us know. And again, thank you so much for such a wonderful explanation 💙

    • @techdose4u
      @techdose4u  4 года назад +3

      You love and motivation is everything I need :)

    • @abhishekrai4325
      @abhishekrai4325 4 года назад +1

      @@techdose4u We love you 3000 Sir 🥺 keep up the good work and we'll always make you proud.

    • @techdose4u
      @techdose4u  4 года назад

      Thanks :)

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

    This is a phenomenal explanation!!

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

    Beautifully explained.

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

    man what a brilliant explanation

  • @RahulKumar-oj4lz
    @RahulKumar-oj4lz 2 года назад +1

    Great Explanation

  • @himangshushekharjha6972
    @himangshushekharjha6972 4 года назад +1

    Simply Awesome! Keep Growing!!

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

    Perfect implementation !!

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

    Nice Explanation! Thank you 😄

  • @sanketsuryawanshi
    @sanketsuryawanshi 4 года назад +1

    Very Well Explained sir 🔥👍🏻

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

    Nice, but how can you get such idea in an interview ?

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

    Thanks for clear explanation !!

  • @Amit_Kumar_1999
    @Amit_Kumar_1999 4 года назад +1

    do you have any sort of material which can give proof of these algorithms? like build the lowest number & finding the next permutation. Though I know how to solve these problems, but I stuck at proof.

    • @techdose4u
      @techdose4u  4 года назад +1

      No material available with me. I don't think we need proof for simple problems like these. For complex problems there is confusion and when we don't really understand why the given algo works then proof is required. But I don't think this problem requires it 😅

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

    Lucid Explanation!!

  • @anshshah4927
    @anshshah4927 4 года назад +1

    Man you are doing very good work keep it up
    Also I did the same in C but C is very messy TBH should I go for c++ or python?

    • @techdose4u
      @techdose4u  4 года назад

      C++ has lower runtime in general. So go with C++

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

    Hi sir amazing explanation the method looked very nice, but i dont think it will work for numbers with trailing zeros in the end

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

    I was also approching the same way, but stuck in one TC i.e "1234567890" where k=9
    op = "0" this will give output 1 according to this approch. Correct me if i am wrong

  • @oladimejijames9554
    @oladimejijames9554 4 года назад

    nice work sir, please keep it up. Kudos

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

    Wow such a beautiful problem!

  • @Shubham-zu1zh
    @Shubham-zu1zh Год назад

    good explaination

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

    Can this be solved using some variation of knapsack , considering size =n-k , values 1 4 3 7 2 9 , as each digit may come or may not come in the solution .

  • @nikhillingam4630
    @nikhillingam4630 4 года назад +1

    Best explanations ever

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

    Thank you very much!

  • @luanaamorim5055
    @luanaamorim5055 4 года назад +1

    thanks so much, great explanation!

  • @gauravkumarpandit7022
    @gauravkumarpandit7022 4 года назад +1

    please make a video on heavy light decomposition and centroid decomposition

    • @techdose4u
      @techdose4u  4 года назад

      Sure....will add it to my to-do list

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

    How do you recognize that this question can be solved by monotonic stack? I'm completely blank after seeing this question!. Only thought came to my mind is of dp, but seeing the constraints killed my initial thought of dp.

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

    👌

  • @anuplohar23
    @anuplohar23 6 месяцев назад

    Nice Explanation

  • @sarthakkhetarpal8416
    @sarthakkhetarpal8416 6 месяцев назад

    great explanation

  • @AftabKhan-dd8et
    @AftabKhan-dd8et 4 года назад +1

    plzz make a video on create maximum number of leetcode.It is one of the hardest problem of leetcode and no solution is present

    • @techdose4u
      @techdose4u  4 года назад

      Will do it later. Not in MAY atleast. Hope leetcode doesn't extend the challenge to June 😅

  • @AMITSHARMA-oh1nq
    @AMITSHARMA-oh1nq 4 года назад

    Can we use butmasking to reduce complexity to o(n)

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

    good explanation

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

    I am a bit confused about this problem. lets say we have the number 143. When we delete 4, 1 takes its place since the new number will be 13 and 1 is in the tens place where 4 was. So why do we look at the number right of the number we delete if the left number takes its place?

  • @vm1662
    @vm1662 4 года назад +1

    Amazing stuff! Thank you.

  • @karansagar7870
    @karansagar7870 4 года назад +1

    Great approach

  • @codesnippets03
    @codesnippets03 4 года назад +1

    Amazing 👌 explaination

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

    If the problem statement is reversed and we have to find the maximum number after deleting k digits, would we do the opposite by looking for where it rises instead of dips from left to right?

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

    pure genius!

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

    Great Video

  • @HarishAmarnath
    @HarishAmarnath 4 года назад

    In 10:58 , what if the next element of zero is 2 Instead of 1 , then our results first number should be 1 . But we would have already removed it . I think it will fail for that scenario

  • @rahulchaubey8988
    @rahulchaubey8988 4 года назад +1

    Nicely explained..

  • @ShubhamSingh-fl3qi
    @ShubhamSingh-fl3qi 4 года назад +1

    This helps alot ThankYou sir

  • @kushgupta1187
    @kushgupta1187 4 года назад +1

    Very well explained

  • @sachinduhan3022
    @sachinduhan3022 4 года назад +1

    amazing explanations man...

  • @secularph8424
    @secularph8424 4 года назад +1

    I was waiting for your explanation,

    • @techdose4u
      @techdose4u  4 года назад +1

      :) This video was little longer and I was very tired after office 😅

    • @secularph8424
      @secularph8424 4 года назад +1

      @@techdose4u its okay
      Usually, I complete the task in the noon and compare our solutions in the night
      But this i couldn't do it, so I was waiting for your solution
      😂😘😘

    • @ojobabatunde8415
      @ojobabatunde8415 4 года назад +1

      As in, so i was

    • @techdose4u
      @techdose4u  4 года назад

      😅

    • @spetsnaz_2
      @spetsnaz_2 4 года назад +1

      me tooo....

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

    Sir the example at 12:00 mins of number 14301620 Nd k=4...the answer if the think on pen n paper should be 1010....but why it is 120 ?.... technically thinking the answer should be 1010 after removing 4 digits ...

    • @techdose4u
      @techdose4u  4 года назад +1

      Removing leading zeroes are not counted as removed digits. This is the special case to be handled 😅

    • @pranavgautam1958
      @pranavgautam1958 4 года назад +1

      1st valley(4-3) 2nd (3-0) 3rd(1-0) 4th(6-2) so, we get -0120

    • @saianushachodapaneedi7504
      @saianushachodapaneedi7504 4 года назад

      Even I got the same doubt...what's wrong if 0 also added in stack...then output will be 0120.. please clarify my doubt

    • @nikkig333
      @nikkig333 4 года назад

      @@saianushachodapaneedi7504 If you add 0 in stack, while displaying result it will have leading 0, in the example shown by LC they removed leading zeroes so we can ignore leading 0s as mentioned here or parse the string integer and back to string so that leading 0s are gone. In order not to put extra effort, ignoring leading zeroes will suffice the requirement.

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

    Thanks

  • @Arunkumar-pg8kx
    @Arunkumar-pg8kx 3 года назад +1

    That was amazing,

  • @istiyakahmed4117
    @istiyakahmed4117 4 года назад +1

    nice explanation! keep it up :D

  • @faizm4765
    @faizm4765 4 года назад +1

    Bhaiya you are amazing !! Are you in linkedin ??

    • @techdose4u
      @techdose4u  4 года назад +1

      Obviously. You can get profile link from my channel. From next video onwards, I will add my LinkedIn handle in description :)

    • @faizm4765
      @faizm4765 4 года назад

      @@techdose4u Thanks bhaiya ✨

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

    Nice and clean :)

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

    Thank You Sir!