9.1 Knuth-Morris-Pratt KMP String Matching Algorithm

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

Комментарии • 1 тыс.

  • @UsmanKhan-lp2mg
    @UsmanKhan-lp2mg 5 лет назад +3104

    Computer Science students will always be thankful to this legend ❤

    • @SarbojitGanguly
      @SarbojitGanguly 5 лет назад +12

      yes, true that. He is simply amazing.

    • @ManishKumar-vg9yz
      @ManishKumar-vg9yz 4 года назад

      chat.whatsapp.com/GSKHF9PdnJkKbjbW0MDgqt

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

      Yess

    • @prashantrandive6132
      @prashantrandive6132 4 года назад +24

      Not only computer science student ,All engineering student be thankful to this man❤️❤️

    • @satyamkumar2820
      @satyamkumar2820 3 года назад +11

      not only CS students, Whole community who are interested in Algorithms

  • @makeitswift9839
    @makeitswift9839 8 месяцев назад +10

    Thanks for explaining KMP in simple terms

  • @ankityadav-ci6gy
    @ankityadav-ci6gy Год назад +17

    the pursuit of understanding this algorithm always scares the hell out of me ..... u came as a savior...thanks a lot, Sir.

  • @richardszegh6443
    @richardszegh6443 4 года назад +943

    this guy achieves to teach things in 20 minutes that university teachers fail to teach in hours

    • @muscleinjury3331
      @muscleinjury3331 3 года назад +54

      *fail to teach in semesters

    • @ManishPandey-ub1hj
      @ManishPandey-ub1hj 3 года назад +28

      @@muscleinjury3331 You need to go to a better university

    • @ketanraghunathraut7615
      @ketanraghunathraut7615 3 года назад +18

      @@ManishPandey-ub1hj no he is right,same for me

    • @extraFart
      @extraFart 3 года назад +7

      I watch his videos on 2x

    • @rheumaticharm9551
      @rheumaticharm9551 3 года назад +25

      @@ManishPandey-ub1hj lol then go to ur University dnt come here.

  • @priyabrata8467
    @priyabrata8467 6 лет назад +1562

    At 11:33 on pattern P3 aab should be 123 instead of 120

    • @arsalanhashemi4469
      @arsalanhashemi4469 6 лет назад +43

      yes true

    • @catlord69
      @catlord69 5 лет назад +67

      was wondering the same, thanks for confirming

    • @myeverymusic
      @myeverymusic 5 лет назад +49

      @@abdul_bari You made the most clear explanation on where the KMP algorithm comes from, instead of just showing us how to compute the KMP array using the pattern string. The way you teach allows students to understand the background, thus we can always recall the algorithm even if we forget. This is the same idea on learning math. You are a great teacher! :)

    • @sharpnova2
      @sharpnova2 5 лет назад +10

      @@abdul_bari that is not helpful. what would be helpful would be for you to insert an annotation at that point in the video.

    • @arindamchakraborty7362
      @arindamchakraborty7362 5 лет назад +3

      C is also matched in P3 so it will be 1234

  • @mamtachahal1277
    @mamtachahal1277 5 лет назад +187

    You might have heard it many times, but still I prefer mentioning it that all these efforts you made to make such valuable contents free of cost is amazing, This is going to serve many programmers for the next coming years as well. Be it your way of explanation, your intuition every thing is just perfect. And we the programming community is thankful to you sir.
    I do hope that you will be making more videos in the coming years. That is the only negative thing that I hear about this otherwise wonderful channel it that the advanced data structures and algorithms are not being covered. This is just a feedback from someone who has been following your videos for quiet a long time.
    Again thank you sir

  • @lukemorrice8692
    @lukemorrice8692 5 лет назад +433

    The best KMP algorithm explanation on RUclips.

  • @gugy6541
    @gugy6541 2 года назад +346

    correction: 11:27 last `b` should be 3. thanks Abdul, I find your explanations more than helpful! keep up the good work!

  • @soupoverflow
    @soupoverflow 4 года назад +65

    This man has singlehandedly helped me through so much of my undergrad degree. All for free. I can’t thank you enough Mr. Bari!

  • @mrreese2342
    @mrreese2342 2 месяца назад +10

    I was so happy when i typed the algorithm's name clicked search and this LEGEND shows up!! all CS students love you sir.

  • @dilukshanbimsara357
    @dilukshanbimsara357 2 года назад +99

    7:45 Start KMP (0:00 to 7:45 Naive String Matching Algo)

  • @lifeofbalaji
    @lifeofbalaji 4 года назад +126

    This algorithm is mostly used in research field. Interviewers won't expect you to formulate KMP in a span of an hour. Rabin-Karp with rolling hash function is some want less complex and less efficient algo(Better than naive though) which can be used in an interview. That being said, I'm only here for this legend's explanation, I'm a big fan from Chennai, sir.

    • @shritishaw7510
      @shritishaw7510 2 года назад +27

      though they don't expect us to use kmp algorithm in interviews. Knowing the concept and the implementation can turn tables for you in the interview.

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

      @@shritishaw7510 But do they expect us to. know this algo?

    • @gladyouseen8160
      @gladyouseen8160 2 года назад +24

      Question was asked in Microsoft

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

      @@gladyouseen8160 was the implementation asked??

    • @vivekverma4012
      @vivekverma4012 Год назад +3

      @@thenishantgiri yes complete implementation

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

    Thanks

  • @shritishaw7510
    @shritishaw7510 2 года назад +8

    Before playing this video, I watched the explanation by some other expressive RUclipsrs, But honestly, no one is nearer to the way you explained the thought process of the KMP algorithm. Thank you for your lucid explanation.

  • @jimmy1681000
    @jimmy1681000 4 года назад +51

    You teach me how to appreciate the beauty of algorithms.
    Thank you so much.

  • @alexandersafi569
    @alexandersafi569 3 года назад +38

    Thank you enormously from the Netherlands !

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

    Its 2021 and its still the best KMP explanation available on RUclips.

  • @travellingsLenses
    @travellingsLenses 6 лет назад +67

    Literally one of the best explainations of KMP on internet :) Keep it up sir.

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

    After searching on internet not found anything better than this video, really appreciate!! Thanks for such simple explanation of this algo.

  • @Pankajkumar-dy9ef
    @Pankajkumar-dy9ef 6 лет назад +239

    HUGE RESPECT TO THIS LIVING Legend!!!

  • @natesh1
    @natesh1 6 лет назад +10

    I have seen some videos trying hard to understand kmp, but none of them have given such clarity like u did. Thank you so much 😊. It's a wonder how just a change of few words can make a huge difference in understanding.

  • @susheelnomula
    @susheelnomula 2 месяца назад +14

    sir small correction to be made at 11:30 for the pattern 3 lps array will be lps[] = [0, 1, 0, 0, 1, 0, 1, 2, 3, 0]

  • @nandanbanerji8309
    @nandanbanerji8309 3 года назад +11

    No one can teach better than You sir. I convey my all respect to you. Desire to meet you personally and just want to bow before you to pay my respect.

  • @pg.n5694
    @pg.n5694 4 года назад +11

    As always my professor out here dropping gems on us humble students. Much love. We appreciate you

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

    Teachers are God and you are one of them...THANKYOU SO SO SO MUCH SIR. Today, our teacher taught the algo but in a complex way, and said that it will take 2-3 hrs honestly to understand but you saved my time.

  • @NoName-qp7hq
    @NoName-qp7hq 2 года назад +32

    Students are benifiting from your videos years after years... Dill se Bohot bada Thank you aapko Bari sir.. Absolute legend 🙏🏻

  • @mohamedel-hadidy4844
    @mohamedel-hadidy4844 3 года назад +7

    Thank you sir
    If I passed my exam tomorrow, you will be one of the reasons
    بارك الله فيك
    ربنا ييسر ان شاء الله

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

      passed ?

    • @mohamedel-hadidy4844
      @mohamedel-hadidy4844 2 года назад +1

      @@skilfuldude7312
      Yeah and now I'm in the last year
      Thanks to God
      الحمدلله
      Wish me luck :D

  • @priyavardhanpatel6155
    @priyavardhanpatel6155 Год назад +3

    I can't say how much thankful I am. I have read this from book 4 times and still didn't understand a bit, but after watching your video only once fully understand KMP. Thank you so much Abdul sir.

  • @big-blade
    @big-blade 5 лет назад +17

    Unmatchable Explanation in RUclips. You're a legend Sir. Thank You.

  • @rashmidhakad4436
    @rashmidhakad4436 6 лет назад +4

    You are awesome. None of the people in my university was able to simplify this algorithm for me.

  • @jpakash1999
    @jpakash1999 4 месяца назад +5

    Man , I used to watch ur videos during my college days . its been 5 years that i graduated still I learn from your videos. Where is he now , no new videos at all these days

  • @collingriffin7949
    @collingriffin7949 5 лет назад +13

    Better than my professor's explanation, keep it up!

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

    We are very grateful to you that we got such a important person in our life....

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

    The best tutorial on KMP. some unpeople taking money for unteaching at unacademy. And this guy is teaching and taking unmoney.

  • @jashanpreetsingh_
    @jashanpreetsingh_ Месяц назад +3

    It's December 2024 & Bro is still ----> THE GOAT 🐐

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

    Used to watch your videos in my second year, watching again for revision in my final year preparing for placements! ( currently holding two offers from big tech companies)Thanks sir.

    • @mannanarora-w6f
      @mannanarora-w6f Месяц назад

      hello bhaiyan , i am in 3rd year what to do for placements?

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

    wish all these great tutorials were available when I was doing my graduation.

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

    I've been roaming around tons of yt channels but I found the easiest and most understandable explanation here.

  • @AryanSingh2512.
    @AryanSingh2512. 6 лет назад +5

    I must say that u are an amazing teacher. In most of the videos, people often suggest tricks, but you explain that trick technically which sounds much more professional. Your videos are great.
    Please upload illustration of Red-Black Tree.

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

    Don't ignore this video because of 19 mins duration, You can set the speed to X1.25 and listen. Each and every input from this legend is just amazing
    Thank you sir. Happy learning😀

  • @0rdsec
    @0rdsec 4 года назад +9

    Standing ovation. I'm a total noob when it comes to algorithms, and I can now say that I fully understand this absolute monster. Thank you.

    • @ShubhamSharma-oq4hr
      @ShubhamSharma-oq4hr 3 года назад

      you just called him absolute monster

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

      @@ShubhamSharma-oq4hr In case you are not being sarcastic, he was referring to the algorithm.

    • @ShubhamSharma-oq4hr
      @ShubhamSharma-oq4hr 3 года назад +1

      @@saumyakhati5612 yep i did misunderstood him.. thanks

  • @LV-ei1ce
    @LV-ei1ce 6 лет назад +1

    Very professional explanation. No matter what, professors are professors. They know how to explain clearly :) Thank you for your time. Appreciate it.

  • @wokpokie
    @wokpokie 4 года назад +76

    Mr Bari, you're truly a gem. None of the videos online could explain these concepts as clearly as you. Really appreciate what you are doing!

  • @doxuanhoang8767
    @doxuanhoang8767 3 года назад +6

    From Vietnam with love :3 Computer Science students will always be thankful to you

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

    Thank you soo much sir for the help i was stuck on this algo for the entire day trying to watch different videos to get a proper explaination and then your video poped up and changed everything :)

  • @guifanweng410
    @guifanweng410 6 лет назад +3

    This is the best explanation I have ever seen. I have searched for several videos, most of them just focus on implementing without much reasoning. However, after watching this video, I fully understood the principle behind KMP and implemented the algorithm by myself. Thank you very much.

  • @user-vo3uy6sv3j
    @user-vo3uy6sv3j 2 года назад

    Dozens of videos trying to understand how the pattern works, found your video and understood in 2 minutes, tysm

  • @PetBuddies
    @PetBuddies 2 года назад +72

    hello Sir, I know I might be mistaken but at 11:25 aren't we supposed to put 3 under be at aab since it matches the prefix sequence aab. Please let me know. Thank you for your concern. And overall I understood the whole thing. Your lectures are the best.

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

    this guy is legend... i now understand how KMP works. Thank you so much.

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

    Funny how my lecturer took 5 hours to teach this topic, and I actually understood during first 30 mins, then he confused me after an hour, I understood again, then he confused me again and pattern repeated, after 5 hours I questioned everything I learnt lol. And this guy did it. the right way

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

      atleast he took 5 hours trying, ours just mentioned it, and then added some tasks about it on our assignment

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

    I've been watching your video since the dawn of my CS study!!! Thank you!!!!

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

    hello king you dropped this 👑

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

    I am a beginner and it was beautifully explained. The only KMP video I understood.
    Thanks a lot sir!!!

  • @TridibSamanta
    @TridibSamanta 6 лет назад +5

    Great ! You are a great Teacher. Thanks for saving my Design and analysis of Algorithm Paper. God in disguise.
    #Respect

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

    Dude I love the video so much. When you found that last match it gave me a big smile. This algorithm is cool! You do such a great job explaining the concept. Thank you for the video.

  • @catboymazov6309
    @catboymazov6309 6 лет назад +289

    KMP starts at 7:40. You're welcome.

    • @AJ-te4jn
      @AJ-te4jn 6 лет назад +53

      Of course sir, but when just one hour is left for the exam, we need your algorithm faster!! :)

    • @saurabhshrigadi
      @saurabhshrigadi 6 лет назад +8

      AJ you are right bro , jo pura saal nahi kiya wo end me youtube se sikhte he aapn log

    • @ninewinskull934
      @ninewinskull934 6 лет назад

      Aditya Ravichandran I

    • @mohammedyakub7787
      @mohammedyakub7787 6 лет назад +1

      thanks bro

    • @tariqchhadia1035
      @tariqchhadia1035 5 лет назад +1

      Before 7:40.... There is Naive string match algorithm...

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

    You are the epitome of awesomeness, when it comes to lucid explanations !

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

    You keep students interest in topic through out the video, thanks for your efforts🚀✔🤘

  • @sawanpatodia5095
    @sawanpatodia5095 5 лет назад +2

    Really appreciate how you explain with examples. Makes it really easy to understand even difficult algorithms. Thanks.

  • @jaikumargupta1368
    @jaikumargupta1368 Месяц назад +3

    9:36lecture start

  • @akshaykumarr7541
    @akshaykumarr7541 5 лет назад +2

    huge respect to u sir.......every department will have one professor like this.....unfortunately i landed up here for having the worst ada teacher

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

    Was still lost after a blog and 2 other videos, only your video explained this so clearly! Thank you!!

  • @malihanan541
    @malihanan541 5 лет назад +3

    I was so confused, turns out it is pretty easy! Thank you!!

  • @jitendrateli7824
    @jitendrateli7824 2 месяца назад +1

    Its an really Nice Explanation. its so much better than reading at geeks for geeks. Sir is making so much worth to learn at RUclips. 🙏

  • @aditikhatri7979
    @aditikhatri7979 6 лет назад +14

    Thank you so much sir! The book I am using has an explanation that I cannot grasp so easily but your explanation is crystal clear.

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

    Hi, great video. I have a doubt. For pattern P3, why aab is not 1,2,3 because it's getting repeated?

  • @CodewithRazan
    @CodewithRazan 7 дней назад +1

    The best explanation from the best teacher ❤

  • @SS-qf3pl
    @SS-qf3pl 3 года назад +4

    in P3 for a a b repeating for 2nd time it should have 1 2 3 but you gave 1 2 0 sir..please verify it!!
    awesome content ❤️❤️

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

      I have the same doubt!

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

    Your explanations are very clear and easy to understand

  • @itzcs1861
    @itzcs1861 5 лет назад +4

    A very lucid explanation to a complex algorithm. Thank you very much sir.

  • @ShaneHughes-q1x
    @ShaneHughes-q1x 9 месяцев назад

    Again - Abdul - thank you for another great video. You make things so easy to understand without fluff.

  • @267praveen
    @267praveen 3 года назад +41

    11:29 - the moment you realise you made a mistake but still decide to ignore thinking " chal yaar chod ... Kya fark paindaa hai"

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

      last b should get 3 ,right?

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

      @@replicatoria yes

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

      @@replicatoria yep

    • @Gurpr33t.S1ngh
      @Gurpr33t.S1ngh 3 года назад +1

      @@pratimasingh1258 yes i was also thinking the same thanks for helping

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

      @@replicatoria, you're right: a a b c a d a a b e = 0 1 0 0 1 0 1 2 3 0

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

    I use to bunk classes bcz I believe in this man,every complex concept is easy here

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

    Sir at 11:55 at p3 I think there's a mistake rest is great ❤️

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

    Damn this the clearest explanation i’ve seen so far, not even chatGPT can explain it this clearly

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

    Sir, you should definitely create a bootcamp course for technical interviews, you ll save so many lives. Thank you for all your efforts sir !

  • @AbdulRahman-rg5dq
    @AbdulRahman-rg5dq Год назад +1

    Sir you are legend your teaching method is amazing alot of love from peshawar

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

    KMP starts at 7:42

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

    OP explanation.. now i understand why my whole college watches you sir

  • @shumzmut9639
    @shumzmut9639 6 лет назад +4

    Fabulous! Excellent explanation. Thank you sir!

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

    Currently I am a final year IT student and I don't know why utube hasn't recommended his video 😭 well this is my first time I am watching his video.. your teaching is awesome 🙇 thank you for making this concept easy for us

  • @shazzedhossainshajal6889
    @shazzedhossainshajal6889 8 месяцев назад +5

    p3 last b should be 3

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

    I am doing it in 2024 .Still the best one out there

  • @harikagajam1238
    @harikagajam1238 3 года назад +21

    those who have exams in coming hours start at 7.40

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

    for some time i thought i was in classroom, Thank you so much sir.....

  • @apporvaarya
    @apporvaarya 5 лет назад +6

    i really wish if you were a professor in my NIT college. :)

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

      bro u lucky to be in NIT, how are the prof there? Here its too bad, even though ours is a Govt univ :(

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

      He was just kidding

  • @Cloud-577
    @Cloud-577 3 года назад +1

    I watched too many videos on Knuth Algo and your explanation is by far the best I have seen. Thank you very much! you a life savior.

  • @ronishtailor
    @ronishtailor 5 лет назад +8

    Kmp starts at 7:39 ... Thank me later 😁

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

    bro is my saviour when it comes to mid or final exam. thank you mr bari

  • @ramakrishnakondibhaneni4030
    @ramakrishnakondibhaneni4030 5 лет назад +5

    11:37 in p3:last b should be 3 why 0?

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

    Best explainations of KMP on RUclips💯💯

  • @adilmahmood9098
    @adilmahmood9098 6 лет назад +5

    IN P3 aab and aab are same so, the next aab must be 123, time 11:55

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

    sir, is legend no doubt but our university faculty taking tym due to making all of us understandable, respect to all faculty.,

  • @sharondenys8211
    @sharondenys8211 6 лет назад +11

    You are awesome! Can you do video of Amortized analysis and loop invariant next time? I feel like these 2 topics are hard to understand

  • @us-wolf
    @us-wolf 2 года назад

    OMG this is the best explanation in RUclips, thank you so much عبد الباري

  • @surabhisharma6608
    @surabhisharma6608 5 лет назад +4

    sir we absolutely love your videos, if you could pls include the algorithms for all these concepts too!

  • @ShruthiDuggi
    @ShruthiDuggi Месяц назад +1

    Tq so much sir i am search many videos but no one is explain in good

  • @palashrathore6277
    @palashrathore6277 3 года назад +6

    7:40 for those who want to go straight to KMP explanation without that naive one

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

    Sir, You have saved me from a lifetime of hardship, you are a legend Sir. I love you Sir. 🛐🛐🛐🛐🛐🛐

  • @ritik84629
    @ritik84629 5 лет назад +17

    Abdul sir aap Google kyu nhi try karte?
    Oh Sorry
    Google aap Abdul sir kyu nhi try karte?

    • @techwithwhiteboard3483
      @techwithwhiteboard3483 5 лет назад

      fuck off

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

      @@techwithwhiteboard3483 Dude, what the hell? Chill out. He was making a joke here.