Remove K digits | Build lowest number | Leetcode
This video explains a very important programming interview question which is ti find the smallest number after removing K digits from a given number. This is a very interesting and also a very important question. At first glace, it might seem easy but it has many special cases. I have first explained the possible cases and then the intuition for solving this problem. This can be solved very easily using a stack. At the end of the video, i have explained the
CODE and shown some more special cases and how to handle them. CODE LINK is present below as usual. If you find any difficulty or have any query then do COMMENT below. PLEASE help our channel by SUBSCRIBING and LIKE our video if you found it helpful...CYA :)
CODE LINK: gist.github.com/SuryaPratapK/...
Пікірлер: 276
You are doing too much hard work dude.Wish you best of luck for your future endeavours.
@techdose4u
4 жыл бұрын
Thanks :)
@gracioussaxena8318
4 жыл бұрын
Did you just fire the guy lol Great job though Tech Dose, well explained!
@nirajgusain1452
2 жыл бұрын
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
3 ай бұрын
@@nirajgusain1452 wow ! 🎉
Can't be explained better than this... Million times thanks for making these questions so simple :)
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
4 жыл бұрын
Welcome :)
@dallasgannon5717
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
2 жыл бұрын
@Dallas Gannon instablaster :)
@dallasgannon5717
2 жыл бұрын
@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
2 жыл бұрын
@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
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.
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.
@techdose4u
3 жыл бұрын
Thanks
Perfect, clear explanation to a problem that I've been stuck on. Thanks so much!
@techdose4u
4 жыл бұрын
Welcome :)
Awesome explanation. You’re doing a great job in helping the community.
The explanation was really awesome bro. Gave a whole new perspective to look at numbers. Really appreciate the effort. Sincerely, thank you.
@techdose4u
4 жыл бұрын
Welcome :)
@ytg6663
2 жыл бұрын
Explain
wonderful video. Great explanation of code and intuition. Keep up the good work
This is absolutely mind blowing. Couldn't think of this approach.. 😭😭😭 Also so many edges cases to handle... But great great video.
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
4 жыл бұрын
Yes....term confuses students 😅
It was such a great explanation. Half way through the video and I knew what to do. Keep up the good work.
Nice content. Keep on making such videos
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
4 жыл бұрын
Thanks for your appreciation.
Amazing intuition explained. Thank you
nice .. this is a good explanation. the good part is you are telling more examples that make more sense for everyone.
@techdose4u
4 жыл бұрын
Thanks :)
I wish I could like this video more than once. Thanks for your explanation. You are good!
@techdose4u
3 жыл бұрын
Thanks 😊
great explaination
Nice Explanation! Thank you 😄
Dude, congrats on 100K. You deserve it
@techdose4u
2 жыл бұрын
Welcome 😄
Great explanation brother. Understood each and every step. Keep doing great work.
@techdose4u
4 жыл бұрын
Thanks :)
This is a phenomenal explanation!!
Simple and perfect explanation!
good explanation
I'm so happy that I found your video. I understood it very well. Thank you very much sir.
@techdose4u
4 жыл бұрын
Welcome :)
good explaination
Sir , the way you explain is absolutely amazing !! . Wish i had a teacher like you . Greatwork Sir !! :) :)
@techdose4u
4 жыл бұрын
Thanks :)
Glad i got the stack approach by myself even though my code was way messier than yours ^^
@techdose4u
4 жыл бұрын
Many were not able to solve this. Glad that you did :)
@PhenomenalInitiations
3 жыл бұрын
Can you please explain why in line 15 he consiered only when stack is not empty?
Became fan of your explanation! Much much appreciated!
@techdose4u
3 жыл бұрын
Thanks :)
man what a brilliant explanation
Beautifully explained.
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)
@techdose4u
3 жыл бұрын
Nice
this channel should have millions of subs.
@techdose4u
4 жыл бұрын
Thanks bro :)
@greatbrothers2947
3 жыл бұрын
This channel work so hard i wish this channel should have millions of subscribers
Man, wonderful explanation.. Highly appreciated.. 💞💞
@techdose4u
4 жыл бұрын
Thanks :)
This is an amazing explanation! Nice question, thanks.
@techdose4u
4 жыл бұрын
Welcome :)
Great Video
Wat an explanation, absolute gem
Best concise explanation
Your explanations are best I have found on KZread.
@techdose4u
3 жыл бұрын
Thanks :)
pure genius!
Nice Explanation
extremly datailed explanation..thank you so much!!
@techdose4u
3 жыл бұрын
Welcome :)
Nice and clean :)
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
2 жыл бұрын
your time complexity is N^2 and space complexity is also N
Amazing stuff! Thank you.
@techdose4u
4 жыл бұрын
Welcome :)
Simply Awesome! Keep Growing!!
@techdose4u
4 жыл бұрын
Thanks :)
great explanation
great explanation, easy to follow and understand. thanks
@techdose4u
4 жыл бұрын
Welcome :)
great job, thanks for good quality of explanation
@techdose4u
2 жыл бұрын
Welcome 😊
Great explanation sir, Thanku so much
@techdose4u
Жыл бұрын
Welocome :)
An inspiration for anyone who wishes to learn or teach DSA
@techdose4u
3 жыл бұрын
👍🏼
Great Explanation
@techdose4u
2 жыл бұрын
Thanks 😊
wonderfull way of explaining..
@techdose4u
2 жыл бұрын
Thanks :)
kya baap tarike se sikhaya bhai. Mja aagya. Thanks man
@techdose4u
3 жыл бұрын
❤️
nice work sir, please keep it up. Kudos
@techdose4u
4 жыл бұрын
Thanks :)
thanks so much, great explanation!
@techdose4u
3 жыл бұрын
Thanks
Good
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
4 жыл бұрын
It could have been dp problem if you thought about recursively solving this.
You are on fire!!!!
starting the day with your video
@techdose4u
4 жыл бұрын
;D
nice explanation! keep it up :D
@techdose4u
4 жыл бұрын
Thanks :)
Thanks for clear explanation !!
@techdose4u
3 жыл бұрын
Welcome :)
Very good explanation and visualization
@techdose4u
4 жыл бұрын
Thanks
Perfect implementation !!
@techdose4u
3 жыл бұрын
Thanks :)
Thanks
Amazing👌
@techdose4u
4 жыл бұрын
Thanks :)
Great approach
@techdose4u
4 жыл бұрын
Thanks :)
Bhai thanks alot for sharing Algo Code and Explanation
@techdose4u
4 жыл бұрын
Welcome :)
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
@techdose4u
4 жыл бұрын
Yes correct :)
Thank you very much!
@techdose4u
3 жыл бұрын
Welcome :)
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.
@techdose4u
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
Amazing 👌 explaination
@techdose4u
4 жыл бұрын
Thanks :)
Nicely explained..
@techdose4u
4 жыл бұрын
Thanks:)
That was amazing,
@techdose4u
3 жыл бұрын
Thanks :)
Lucid Explanation!!
@techdose4u
2 жыл бұрын
Thanks 😊
Very Well Explained sir 🔥👍🏻
@techdose4u
3 жыл бұрын
Thanks :)
Too Good!
@techdose4u
4 жыл бұрын
Thanks :)
Very well explained
@techdose4u
4 жыл бұрын
Thanks :)
This helps alot ThankYou sir
@techdose4u
4 жыл бұрын
Welcome :)
amazing explanations man...
@techdose4u
4 жыл бұрын
Thanks :)
Thank you so much!
@techdose4u
3 жыл бұрын
Welcome
Best explanations ever
@techdose4u
4 жыл бұрын
Thanks :)
🔥🔥
👌
@techdose4u
4 жыл бұрын
👍
thank uu
Can we use butmasking to reduce complexity to o(n)
nice explanation ❤❤
@techdose4u
4 жыл бұрын
Thanks :)
Thank You!!
@techdose4u
4 жыл бұрын
Welcome :)
Thank You Sir!
@techdose4u
3 жыл бұрын
Welcome :)
leetcode gave me this edge case for the following problem : "9964143637881536115347130215819342018286368478941148499497648482711459533461004254405644237053081606083361703097681313409879305615510320200854934444651935440830730707105506511273844202022847156939479617415032308016122590196433883734152425324321850950025461922368309179936567772058238956815658522566619712309337787110000248140248621983725541138216249932119341652497227527347196915584874245747655643373728114771002178121013476532176128561227651191732455258556988215663509467036265356759614472865379500702323093381756610448863769645016608790510082369942579876359844432606935705284237991853585529691576005445931743352187877817181108107659316666309094802979311362685246271238811648377471342618391148123088439359424933182816550379826963424443077369303388270800024963285014879985932202469314657763554311465766241899886051752598919297325070163176559846505309761680481734434389501672456194786083611750491579701118513267425527823659774604213876847372305982594830156571943761073290766254549904295349986681374115730100337100520099231426507753102943794893125561715341714882235592831859851753324171964100271220487416100160426921656692822076747471313551671799749136336020476415426498900467136354109743348482211848364210754765858145061682176996476703252113885157082272913476246001426543322720172472400433849455239728009056816478610972157143620619838281484903385698733878747333577266693321881082248284899461049170566515551638479945941859455913682794110638768950164185110174329858257546630386490667378849662828892086742219395018081013139661291385111259380764915297206827929993411346366971457561364592936565292180883672568239002607555932099570488014976458337969750530347455002905982811683646920337042844933044228156313556893574266924334421860399441795570348505986213235968877629037821039295531078587452820520378855971549385240599138029027426814355797039844185115797752068944043026514402978978851104279587917456738135851069474951293893468797930509914957546422062980494255056416478680885689780986382412165954803439553973540706927945767861390922237184889229475493329909116465687108626908432452951254474743412354718972999375833762203809869944881570164493465129271906768322772743880895596954354231919788356736973386736425035313669786510718228292965591836221183232782757135478753561150173194385615500385373233981959493952471916956111069857167656232936080328221546753405850472812773151559894114363782701095557909245140582135212670655043831517604969231621049089970261307870253571673590180617152285302103559731670339047857148567799820792277393882937146083861121444641752891357528477673783704643969540852343441491634297968882019783645863769499154099829169034519420545243923982738295303981036771224459015594039438755491178665247811195429718554410638417459245168087508373787473581006876786621492463488551382880888016193098727660257087286075211981304241455039635843389359277754175667320688287674673170776696626809610432006193791350589302883359213754039606437515551397976472818092708306048112752211824002614062564731378390107393841924024992900096272203427395268363591954016973222085497810130812644667188518603229549084506011656716594567797567298132136216194941840585237878858460280261239887687428829375605555945753827119720586750631367716075599073634731471504260724387869378014436808380008096784296619353982377042796709113277023048503614322336338787624495889957753806917512300465195258871128700879115968204258194381296288237529334846252325708114045756734861206974694332984226429182357067126837458065169631111462435830423526194589462766826719275660644126448562809748092006285700764039691021497055662341656594078963665734973515004383619424206199423404426260428435029625839720828715873547773951561589009316755538926217057660908236519924235235619770675436108507917722314466270142484807060731907806830319044273720218636481802179286069057173343243951397675980777851315120680118430072968591076578558637383169959517835261015038328382345688129364776302241168625264064812069025112090263137082552535421329754943044198941936240688824218041364039700546228900283717808668314344125472252807531518791099498692946306328235067764410531248477081885126875518308672990452448890110228731016986585572535897645362817103841400441546963512425504489024589005011590124360348938492006792308704507061642951011458749395538490335711130206859554892150422217109609854841320808883156074499689978384411831818569414262079698400452210643442851321588188354275888886257603641542109776241390729041700493644160923820461710058687648706149758610663198374013955557327262668118696927211331534855305270845371631301081119472690423140645543286568447703696095356440639011578632338858560471650438477891281241072990894958114372212031895484984653567691286852652650107819350239352406247153415410489981573464865003560861111332722204086414609128602020530497009851004558213098998166539307648066090774246910719321947561845561811551635349521128959781556450619336828717871420898920647009920722717177061958022742777205857695854934254785056637106031433088913246626097291550078584270096661510394983107568852284638963599007835813868746666309926509943177567423764071146627260987232909089440658715419840948643405694899164262372586852026108171450189145270495456283424448569589948515079403390259530337163259718494052568455827222239581358795056659883657572871140467289486985130119950834544281691454027423177357369504911743323275056434347729657191133645133876512280190549218912402169969802021783116006137524974034884121177247645508906187095351048025633571322832319878202674281722032124798012166778080087780121953281154213990048080361508373995751341852800925384965505331299553457430714895272762787031887232509441186074980915540748406598710173038534657124879846721233591082115228641107791579039749775647761305136598794351890975921125276308162602613620947449084111833733277311612206315241420877680167161438220399831080179104610998046479515377590428457920804676517029937657171269635939119530901104658094509911834532916480786646162451345985896947826134836574624284225410044907484601816238164950877120569238794304908387715612875323938649830559994913847735846142427346403699764243535207474309469556453569337817388828063386673201871070106075270225888456218745849251418102741904560860713975379774169322590092343616327329178404794610285957334113599535194067297494574506232093110791623246072201088665182707451600906528066716801778296466352116847226315589109436913458461169480262043362176721412417396263618014297812863894569241927022251843236338212810026054491745524431816261936080879721415400139684005152086524990911977362327604478399623548495844170253366109533533745860373292406811347654427322004062128727816870739347150484269231235478226556874230536777363555700806568810979064871335057235179992463827382981618762627934240748675861788419966966928608060895764016209642774439752210302641378269815873258179000071675149007690634648402383570243847410517693177906568998013034783715505630346774249951596571304595795422559205980746291728274910535867306471613576584967759160806132390501968761657940111783971926932724300758693836556821231163843128368094607938898908079852172177082531123738229964097723172239004001873306000872671136917795579250480587166095227513303636144825722216217410612188695684620857717590021703108526077575365136576503892571795469501972023565367296868901957326265446043677290076577561548925783488235294134907367257567056159306138787933767323329430647993503126831151518641629962296657851797867581892758511834434836115871075631305313171629312419298203797778937978212212065639949848860893174395253604154645329950104157745622961822125351922490661182775122039377762364257753265392919143960318300488002198280753602322178959901050212568772400468517743851667463897673688774948011835714122935517858871877786651062920273375111055933492403860770905970985397924956951021275562795431502500806645371609682567723668096992175087712673025694981107705697503168637056584581698103616789233045510349716540798432279251526556648379633827348804287772844732893364577341009306236568268726801331893106555271701367417282270428827919746197880594428541322028499930384974054042989302540781012005370199906430319556272687007906821384315109437884645847116815976336340146845907247443530043331401570136363370530915319618701366471761797561864822781675495147435474205623389661981530587155618059093419177544645023243506433417343485533346526216034151725020954864421131237384144102474077299206755740534997886723627476115663811233372206043170460623060506091246306386543951687123557178508806912199010111871"
Amazing sir
@techdose4u
3 жыл бұрын
Thanks
Thanks man :)
@techdose4u
4 жыл бұрын
Welcome :)
Thanks man
@techdose4u
4 жыл бұрын
Welcome :)
Thank you....
@techdose4u
4 жыл бұрын
Welcome :)
helpful!
@techdose4u
4 жыл бұрын
👍
what is the time and space complexity for this solution definitely it wont be O(n*k) ?
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
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.
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
4 жыл бұрын
C++ has lower runtime in general. So go with C++