Longest Common Prefix (LeetCode 14) | Full solution with animations and examples | Study Algorithms

  Рет қаралды 99,503

Nikhil Lohia

Nikhil Lohia

Күн бұрын

Пікірлер: 240
@dhritiarora4147
@dhritiarora4147 2 жыл бұрын
All the 15 mins were worth it. Great job!
@nikoo28
@nikoo28 2 жыл бұрын
Thanks for the support and motivation
@SuryaPandey-e2s
@SuryaPandey-e2s Жыл бұрын
You always provide the best, easiest, and simplest approaches. I watch your explanations and then try to write the code independently, and I succeed most of the time. Keep making such great content. It really helps us a lot.
@nikoo28
@nikoo28 Жыл бұрын
that is so nice to hear. I hope to keep bringing quality content for you guys.
@PawanKamat-q3i
@PawanKamat-q3i 16 күн бұрын
I never thought of sorting when I tackled this problem, but this makes so much sense to sort it and compare only two strings instead of all. Loved the approach, shows me how much I still have to learn!
@quantisticnumbers2633
@quantisticnumbers2633 Жыл бұрын
Definitely one of the easiest and best solutions that I came across. Thanks for the video!
@arjunmsit
@arjunmsit 2 ай бұрын
Very nicely explained. Your pace and explanation is super. I'm learning/revising DSA almost after 10 years and I should acknowledge that your videos are helping me a lot. Thank you very much for your efforts 🙏🙏
@ajaysaran6541
@ajaysaran6541 4 ай бұрын
When i saw the optimized solution, i really amazed. Thanks for helping in learning journey. 15mins completely worth it.
@quartekstudio8127
@quartekstudio8127 10 ай бұрын
I was stucking this question for 4 days by watching many of videos but I can't find out the best way to answer this question. But you did and explain it really well. I know I'm not that good as problem solving but you are the one who can explain the concept from really hard to a really human can understanding really easy
@officialdreamplayz
@officialdreamplayz 10 ай бұрын
how many questions u have conquered till now i m on 4th (easy)
@quartekstudio8127
@quartekstudio8127 10 ай бұрын
@@officialdreamplayz just only 6-7. We are going slow because I think we are missing something or some concept to answer or design to answer the question. I think keep doing it will help us a lot. For me answering in Code war was really easy more than leetcode
@nikoo28
@nikoo28 9 ай бұрын
all the very best...and glad to see your progress
@englishpopop7694
@englishpopop7694 Жыл бұрын
this breakdown made things much more clear and easy to comprehend
@niteshpandey8207
@niteshpandey8207 Жыл бұрын
Esko dekh ye pta chala ki aise bhi question solve kr sakte hai.... keep posting
@nikoo28
@nikoo28 Жыл бұрын
😄
@enriquegrageda
@enriquegrageda 10 ай бұрын
My bro, you are a great teacher!
@sumanthpai4587
@sumanthpai4587 Жыл бұрын
Very Articulately explained . with proper animations etc , really good job
@tashi7316
@tashi7316 2 жыл бұрын
So far one of the best solution I have seen
@satyamgupta6030
@satyamgupta6030 Жыл бұрын
great teaching bhaiya. I always look for ur videos whenever I search for a solution of a leetcode question. No one comes close to you when it comes to explaining multiple approaches and finally solving with the most optimal approach . Thanks bhaiya.
@nikoo28
@nikoo28 Жыл бұрын
It's my pleasure
@kunalkheeva
@kunalkheeva 2 жыл бұрын
your videos seem like bit longer, but its really very productive, I couldnot even skip it for a sec, just great work!! Thank you!
@nikoo28
@nikoo28 2 жыл бұрын
I really try to go over the concept, rather than just giving away the code...the same you would be solving a problem in an interview. Thanks for your support. Much appreciated. 😄
@CostaKazistov
@CostaKazistov 2 жыл бұрын
Great style of teaching algorithms. 10/10 👍
@nginx.h
@nginx.h Жыл бұрын
bro i stuck at this problem and i dont understand how to solve this question but after watching some video i not getting it better but u solve this question with very simple approach. 👍👍 well done bro
@HY-eu4ei
@HY-eu4ei 2 жыл бұрын
tried a lot of videos and i would say this was the best explanation of all such a easy and elaborative explanation. thank you
@nikoo28
@nikoo28 2 жыл бұрын
Glad you feel this way ♥️
@himadripaul7332
@himadripaul7332 2 жыл бұрын
excellent this channel will grow gradually ..no bakwas straight forward explanation ..
@kingop2679
@kingop2679 3 ай бұрын
Your approach is really nice i didnt even think to sort array
@subhamagarwal476
@subhamagarwal476 6 ай бұрын
addicted to your channel. You explain so simple and in easy way. Thanks a lot
@candichiu7850
@candichiu7850 2 жыл бұрын
Thank you! The BEST on KZbin. Super explanation.Keep up the great work.
@PankajYadav-nz4gn
@PankajYadav-nz4gn 2 жыл бұрын
Oh My GOD!!! I can't imagine that someone can be this good in explanation. Amazing and super thanks.
@nikoo28
@nikoo28 2 жыл бұрын
Wow, thanks!
@Prince-fv8mb
@Prince-fv8mb Жыл бұрын
loved the way you explained sir.....This channel is highly underrated
@nikoo28
@nikoo28 Жыл бұрын
Thanks for your support and motivation. I really hope the youtube algorithm picks up the channel soon 😅
@sharcodes
@sharcodes Жыл бұрын
Love your Solution. Best Wishes for You. I Would Love to see your Channel Grow, why this is so Underrated.
@nikoo28
@nikoo28 Жыл бұрын
Thanks for your support and motivation. I really hope the youtube algorithm picks up the channel soon 😅
@egm5081
@egm5081 10 ай бұрын
man, what amazing explanation, thank you so much!
@bivashroy2829
@bivashroy2829 Жыл бұрын
If the string contain a mixture of capital and small letter then sorting can't be the solution... string commonPrefix(vector& strs,int n){ string s1 = strs[0]; int ans_length = s1.length(); for(int i = 0 ; i< n ; i++){ int j = 0 ; while(j
@kirankutte7073
@kirankutte7073 2 жыл бұрын
Awesome explaination. I liked the slow and animated explainartion. Good job!
@nikoo28
@nikoo28 2 жыл бұрын
Glad you liked it
@spongebobsquarepants4576
@spongebobsquarepants4576 6 ай бұрын
Interesting solution with sorting - but then you get n*log n. You can simply search the list for the shortest word and then compare it with all other words, thus making it O(n * k) where k is the length of the shortest word. Depending on the input you have in a real life scenario, your approach might be more efficient if the strings are very long, so if the length of the shoertest string k > n where n is number of values in the list, then your approach is more efficient. Anyway cool explanation thanks!
@ronakpatel2826
@ronakpatel2826 3 ай бұрын
string longestCommonPrefix(vector& strs) { int mini=INT_MAX; int ind=-1; for(int i=0;istrs[i].size()){ mini=strs[i].size(); ind=i; } } string ans=strs[ind]; int j=mini-1; while(j>=0){ int k=0; //bool isOk=true; //cout
@huquea
@huquea 2 жыл бұрын
OMG, you took teaching algorithm to next level
@nikoo28
@nikoo28 2 жыл бұрын
So happy you feel this way 😄
@s.harishkumar3087
@s.harishkumar3087 4 ай бұрын
I understand this problem with your explanation Easily❤
@d54nirajthakare69
@d54nirajthakare69 2 жыл бұрын
The level of Explanation I saw today was amazing !!!
@nikoo28
@nikoo28 2 жыл бұрын
So happy you felt that way
@raghavkaushal7561
@raghavkaushal7561 2 жыл бұрын
Thank you so much brother!!! Your explanation is extremely simple to understand and follow. Wish I had a teacher like you.
@nickjr9994
@nickjr9994 Жыл бұрын
Very good explanation brother. This solution was so precise and easy to understand. Thanks a ton
@nikoo28
@nikoo28 Жыл бұрын
glad you liked it.
@mdrabby1259
@mdrabby1259 Жыл бұрын
Very good explanation ❤😊
@saiyamjain6099
@saiyamjain6099 2 жыл бұрын
Excellent explanation 🔥 keep making more videos loved it
@gopro12378
@gopro12378 Жыл бұрын
Crystal clear concept thank you sir!
@LuisGuarin-y4z
@LuisGuarin-y4z Жыл бұрын
You're such a good teacher. Thank you!
@nikoo28
@nikoo28 Жыл бұрын
Glad you think so!
@ShiraBoruchovich
@ShiraBoruchovich Жыл бұрын
Great explanation, but I would add a check for potential issue where an Index error can occur if the first and last strings in the strs array have different lengths. Like this: min_length = min(len(first), len(last)) for i in range(min_length)
@nikoo28
@nikoo28 Жыл бұрын
Sure, you can do that
@palashbharati8818
@palashbharati8818 2 жыл бұрын
string longestCommonPrefix(vector& strs) { sort(strs.begin(), strs.end()); string st=strs[0], end=strs[strs.size()-1]; string ans; for(int i=0;i
@oncloudnine4334
@oncloudnine4334 8 ай бұрын
bro can you explain why we go with first and last and explain why can't we go with first and second string
@kamleshkumarsingh5140
@kamleshkumarsingh5140 10 ай бұрын
SC will be O(n) right for using stringbuilder?? Great explanation though
@nikoo28
@nikoo28 9 ай бұрын
you are absolutely correct. My bad..the space complexity will be O(n)
@erenyeager4452
@erenyeager4452 2 жыл бұрын
Hey, found a similar problem but no one had a good solution online. The idea is to find the longest palindromic prefix. Would help a lot if you can make a video on this. thanks for the videos. love them.
@zack176
@zack176 Жыл бұрын
Wow so you are finally tired of destroying world
@aradhyashukla2813
@aradhyashukla2813 Жыл бұрын
Explained a complex problem very easily 💯👏
@AvinashKumar-ps4tw
@AvinashKumar-ps4tw Жыл бұрын
Very Crisp and interesting explanation
@bxp_bass
@bxp_bass 5 ай бұрын
That optimization only works in python or other interpreted languages, where sorting is much cheaper than a loop. In golang or c or c++ it's much faster to do loops, so you don't need to spend O(n log n) on sorting
@jatinkumar4410
@jatinkumar4410 2 жыл бұрын
Hello... Nice and clear explanation. But i have a doubt. Shouldn't the time complexity of efficient approach be: O(n*s*log(n)) (where n: length of array and s: average length of string) Instead of O(nlogn) (13:52) . If that is the case, then time complexity of brute force would be better than this approach. Isn't it? Also aren't we going to consider space complexity taken by sorting algo internally?
@sasidharnaidu4507
@sasidharnaidu4507 8 ай бұрын
Yeah, you are right. The brute force approach is even less time consuming when the initial chars of the words won't match.
@animationTip
@animationTip 2 жыл бұрын
I love the way of explanation.Thank u so much making such a video bhaiya .
@amitarajput1153
@amitarajput1153 Жыл бұрын
Best Teacher. Please upload more videos. Super thanks
@aparna5778
@aparna5778 8 ай бұрын
Thanks for the explanation. Was easy to follow.
@ChaitanyaPimparkar
@ChaitanyaPimparkar 2 жыл бұрын
keep them coming
@chakri2622
@chakri2622 Жыл бұрын
this video made to subscriber to never loss hope and don't give up u will grow
@shivenderkumar4521
@shivenderkumar4521 2 жыл бұрын
Very Simple and clear explaination , Thank you ❤
@Ishankulkarni
@Ishankulkarni 8 ай бұрын
The efficient solution isn't in fact the most optimal, sorting strings is not nlog(n) but the worst-case & average time is n^2log(n). Only in the best case where the first characters of the string do not match, the TC becomes O(long(n)).
@nikoo28
@nikoo28 8 ай бұрын
you are correct...happy to talk about an even more optimal solution if you have to bring up 🙂
@sandeepkarne8407
@sandeepkarne8407 23 күн бұрын
iam ur new subscriber today nice that i found u in my early prep of time
@nikoo28
@nikoo28 18 күн бұрын
Hope you find the content helpful!
@amolgawai010
@amolgawai010 6 ай бұрын
Great Explanation, small correction: Space complexity is O(n)
@nikoo28
@nikoo28 5 ай бұрын
we aren't using any extra space to arrive at the solution
@aryasharma69
@aryasharma69 4 ай бұрын
@@nikoo28 but we are using string builder it has the property to store n elements so the overall space complexity will be O(n)
@parulsaraogi6770
@parulsaraogi6770 2 жыл бұрын
Woww explained so well.. just loved it 🥰❤️
@denisgordiy5718
@denisgordiy5718 Жыл бұрын
Thank you for great explanation. IMHO more efficiently is not to use StringBulider but just return first.substring(0, index)
@nikoo28
@nikoo28 Жыл бұрын
The difference will be very minute. :)
@CodingJourney-sz3og
@CodingJourney-sz3og 10 ай бұрын
i have a query , why we are comparing rhe first and the last string in the efficient solution after sorting the strings .. after sorting even first two strings can give the solution
@officialdreamplayz
@officialdreamplayz 10 ай бұрын
clever clue deliver now compare 1st and 2nd 😂
@rishidangi2978
@rishidangi2978 10 ай бұрын
first and the last string will have the maximum possible difference, while first and second will have the minimum difference as they're sorted
@ankanhaldar1130
@ankanhaldar1130 2 ай бұрын
if your string str=["clue","clue","clear","clumsy "] then??
@eyerahulk
@eyerahulk Жыл бұрын
Nice explanation, thanks man.
@shivanijain2192
@shivanijain2192 5 ай бұрын
what is the time complexity of brute force. And Sorting must be also compare all the characters internally then just wondering how it is optimized solution
@Chhooso
@Chhooso 11 ай бұрын
Finally was able to understand it😭👍
@LuckyAndDad
@LuckyAndDad 2 жыл бұрын
Excellent narration
@SaumyaSharma007
@SaumyaSharma007 2 жыл бұрын
Thank you brother 🙌
@kidoo1567
@kidoo1567 Жыл бұрын
Asusal nikil is on fire❤
@rishabhjain7651
@rishabhjain7651 Жыл бұрын
love to way of explaination 😍
@muhammadmahbub6462
@muhammadmahbub6462 3 ай бұрын
Thanks for the clear explanation. but i have solved using php😊
@rishidangi2978
@rishidangi2978 10 ай бұрын
don't you think that for loop should also have the condition "&& i < last.lenght()" as if the first array has length greater, then it would also check that index char for the last array, which would result in "IndexArrayOutOfBonds" exception like the example: canada, car, czech (sorted) here the first element would have the length 6, so the for loop would also run for the value i = 5, but the last[5] doesn't exist
@rishidangi2978
@rishidangi2978 10 ай бұрын
ok so I came up with the answer, its because the traversal of the string would just stop before it hits index more than the last element, correct me if i'm wrong
@nikoo28
@nikoo28 10 ай бұрын
absolutely correct
@deepti8787
@deepti8787 Ай бұрын
Nice explanation
@SMARTRIXDbztttmods
@SMARTRIXDbztttmods 2 жыл бұрын
*Excellent Work 🔥Thanks Sir*
@curiousvaita
@curiousvaita 6 ай бұрын
Amazing Solution. Thanks a lot.
@vm1662
@vm1662 Жыл бұрын
Great explanation! Thank you. :)
@punamroy6639
@punamroy6639 5 ай бұрын
great explaination. Thank you
@VaibhavSingh_code
@VaibhavSingh_code 8 ай бұрын
Maza aayega ❤
@anshikagarg9485
@anshikagarg9485 2 жыл бұрын
I can't think... Thanku for this optimal approch
@salmarafiq7695
@salmarafiq7695 2 жыл бұрын
Amazing explanation!!!
@keshavkaushlya8355
@keshavkaushlya8355 Жыл бұрын
if possible try to show the code for brute force approach also, this helps in understandig the problem in a much better way,btw doing great work,appreciated.
@nikoo28
@nikoo28 Жыл бұрын
thanks for your feedback and support :)...but usually coding for brute force is not desirable...i only do that in scenarios when you tweak a brute force approach to convert it to an optimal solution.
@saurabhsaxena8470
@saurabhsaxena8470 Жыл бұрын
In actual interviews, should we just explain the brute force solution and code only the optimal solution or try to code both?@@nikoo28
@sahilbait2981
@sahilbait2981 5 ай бұрын
Please make a video on Repeated String Match question
@synctrader
@synctrader 9 ай бұрын
This is a great solution.
@debojitmandal8670
@debojitmandal8670 Ай бұрын
But I think we can also do without sorting bcs ur comparing first and last word of the list and also how is the space complexity o(1) when ur appending Plus sorting itself will take o(n) Plus iteration of first word will take o(length of the word)
@amitshukla2268
@amitshukla2268 Жыл бұрын
Hey Bro really thanks, wanna give a suggestion, please use dark color in ppts.
@nikoo28
@nikoo28 Жыл бұрын
i prefer while, as it gives an experience with whiteboarding as well. You will be doing a lot of whiteboarding in any organization. 😄
@muskancreativity7
@muskancreativity7 2 жыл бұрын
Best explanation 💜
@nikoo28
@nikoo28 2 жыл бұрын
Glad that you feel this way :)
@Abhishek-ji6qj
@Abhishek-ji6qj 2 жыл бұрын
#python:- x = ["flower", "flosing", "flowing"] prefix = "" for i in range(len(x[0])): flag = 0 temp = x[0][i] for j in range(1, len(x)): if not x[j][i] == temp: flag = 0 break else: flag = 1 if flag ==1: prefix+=temp else: pass print(prefix)
@hemant8762
@hemant8762 Жыл бұрын
Thank you so much sir
@abhijitbiradar
@abhijitbiradar Жыл бұрын
very nicely explained. thanks
@gokul6120
@gokul6120 3 ай бұрын
But i thought Array.sort() will take time complexity of O( n k log(n) ) where n is size of arrays and k is the length of longest string in arrays to sort lexicographical order ... So may it would be too expensive to use it. Now i could store our data in tries format instead of array format. but if we have still the array format then we should use bruteforce approche couse it will take only O(n * k)
@ankanhaldar1130
@ankanhaldar1130 2 ай бұрын
Yess!! good observation !!
@munzirahmed6424
@munzirahmed6424 9 ай бұрын
#this code for #python. def pre(a): a.sort() first=a[0] last=a[-1] out="" for i in range(len(first)): if first[i] == last[i]: out+=first[i] else: break return out print(pre(["flower","flow","flight"]))
@SouravCheck
@SouravCheck 8 ай бұрын
2:07, A is also a counted in prefix?
@mohdsameer2445
@mohdsameer2445 Жыл бұрын
very nicely explained bro
@nikoo28
@nikoo28 Жыл бұрын
🤝
@TemuriChitashvili
@TemuriChitashvili 8 ай бұрын
Really good.😉
@PranitKothari
@PranitKothari Жыл бұрын
You explain nicely!
@anshikagarg9485
@anshikagarg9485 2 жыл бұрын
Awesome👍👍
@DalisYn
@DalisYn Жыл бұрын
Thank you so much this one was a bit confusing
@khushaldodeja8267
@khushaldodeja8267 Жыл бұрын
Thankyou soo much buddy ❤️
@colveness9155
@colveness9155 2 жыл бұрын
ty for video, great explanation!
@kaustavhalder7263
@kaustavhalder7263 Жыл бұрын
wow what an explanation
@md.shimul4805
@md.shimul4805 Жыл бұрын
Thank you so much!!!
@debasmitadash9974
@debasmitadash9974 Жыл бұрын
You are amazing. ❤
@nikoo28
@nikoo28 Жыл бұрын
You're the best!
@myosith4795
@myosith4795 9 ай бұрын
In the Arrays.sort method going to iterate every element so we can iterate these elements we can avoid use of Arrays.sort method 😊
@Chathur732
@Chathur732 3 ай бұрын
Wonderful!!
@B_Drive_2K
@B_Drive_2K Жыл бұрын
Nice Solution
@ahmed91372
@ahmed91372 Жыл бұрын
What is the time complexity of the brute force approach?
Мен атып көрмегенмін ! | Qalam | 5 серия
25:41
Quilt Challenge, No Skills, Just Luck#Funnyfamily #Partygames #Funny
00:32
Family Games Media
Рет қаралды 55 МЛН
Longest Common Prefix - Leetcode 14 - Python
6:31
NeetCode
Рет қаралды 191 М.
How I would learn Leetcode if I could start over
18:03
NeetCodeIO
Рет қаралды 736 М.
Lecture 80: Longest Common Prefix Problem || Tries || C++ Placement Series
20:17
Longest common prefix
14:24
Techdose
Рет қаралды 80 М.
LeetCode was HARD until I Learned these 15 Patterns
13:00
Ashish Pratap Singh
Рет қаралды 665 М.
Мен атып көрмегенмін ! | Qalam | 5 серия
25:41