4.6 Optimal Binary Search Tree (Successful Search Only) - Dynamic Programming
HTML-код
- Опубликовано: 21 фев 2018
- This problem is a partial, considering only successful search.
What is Binary Search Tree?
What is Optimal Binary Search Tree?
How to create Optimal Binary Search Tree by applying Dynamic Programming
PATREON : www.patreon.com/bePatron?u=20...
Courses on Udemy
================
Java Programming
www.udemy.com/course/java-se-...
Data Structures using C and C++
www.udemy.com/course/datastru...
C++ Programming
www.udemy.com/course/cpp-deep...
Abdul Sir, I work for Microsoft in Redmond Seattle. I have 15 years industry experience, but I have never seen such crisp explanation of DP. Chained Matrix mult and this one with OST, is one of the best explanation videos on RUclips ever,
Hi , I am Saptarshi Rudra from India. I have a passion for working at Microsoft and a good grasp over DS and Algo and years of Software Development experience. I would really love if someone like you recommend me for a Software Developer / Engineer position. I have applied for these positions for the past 2 months, but yet to receive any call. So I would be extremely grateful if you recommend me.
My full name is Saptarshi Rudra.
Thanks.
@@Akaash449 waste of time bro he might have changed his mail I'd so only no response
he told the formula to fill the table after filling the table..all the time i was thinking how he is filling.....so how can you say this is best......
@@Akaash449 Why do people wanna work in foreign I don't get it? You guys don't like it here? Proximity to family and friends don't matter to you?
@@atharvameher5880 please inform yourself before rashly posting a comment. Microsoft, Google and Amazon have local offices in the country in many states. Where is even your statement coming from!!
For those who don't understand the formula here is an explanation. It took a while for me too.
Everytime you try to add the nth node on to a tree with n - 1 nodes, you have to pick a root point k and k - 1 nodes on the left tree, n - k nodes on the right tree.
k - 1 and n - k each as INDIVIDUAL TREE should already be calculated previously according to the table, so you just have to find where those are on the table which is at c[0, k - 1] and c[k, n]
Look now we have the rank of 2 trees and 1 single root, to push the left or right tree into a sub tree you need add one level on each of their node therefore add the entire weight of the tree
The combined tree with k as root have:
Rank(k) = Rank(left) + Rank(left) + weight(left) + weight(right) + weight(root) = Rank(left) + Rank(right) + weight(0 - n)
= c[0, k-1] + c[k, n] + w(0, n)
This is an application of knuth optimization for Dynamic Programming
Thanks!
nice bro but I did not understand anything.
@@mfaraday4044 😂🤙
Well explained :)
You can see. He teaches with love, reveals everything that needs to be mastered. Thanks Abdul. You are the best.
enna sollu thaliva
You are a life saver, sir! Honestly, you make this subject look so easy and fun! Hooked.
Thank you, Sir 🙏
Dear, check the amount once. I think, it’s by mistake.
Abdul Sir, I am a 5 year experienced Software Engineer. I have Google interview coming up on June 10th. So I started watching your algorithm videos and reached this lecture. Although I found this playlist very late after referring to a number of resources, your videos are very effective and easy to understand..
such an amazing explanation of optimal binary search trees!!! thank you so much for making this video!
You are a wonderful teacher. Thank you, so much for helping me to understand these concepts in an easy way.
Thank you Sir for the video. The effort you put in making these videos is really commendable.
Abdul Bari Sir (love) for ur passion to teach us, with every new video you raise the bar even higher,
I cannot thank you enough for this, hope u always stay healthy & wealthy :)
Great video so easy to understand , clear pronunciation and clear handwriting
It's relatively impossible to not understand what you convey . You are a legend ❤️.
For all concepts in DAA i watch your videos .
First time when I watched your video on this concept i couldn't understand as I was bit hurried due to upcoming test in an hour .😁😁
But now here I am again for the second time , watching this concept and understanding it properly .
Note : for those of you who don't understand Abdul Bari sir , maybe you need to be relaxed and give some time to the video without any hurry . This is specially for those who come here an hour before exam 😂.
tomorrow is my viva and i am here that makes u life saver thankuh so much sir
You just saved my life in a Data Structure exam, thaks very much 😍😍😍
Wt a teaching sir..... Really no one can say like u sir..... With out disturbance....super sirrr
ur videos r great sir...thank u for saving us...gitam students love u a lot
Sir, I have to thank you a lot for saving me. Great content and explanation! Please keep up the good work!
For the recurrence relation, it would be more appropriate to write C[i, j] (for i < j) as the min {C[i, k-1] + C[k+1, j]} + w(i, j) where i
I have gone through few video lectures of ur's sir..Very qualitative, easily understandable..
Thank you.. :-)
Playlist is matching VTU syllabus..
+Abdul Bari Yeah sir.. Visvesvaraya Technological University..
Exams for my students will be in Jun-Jul
Sir's explanation is great, i just love his explaining techniques.
great video! Explain things so well!
Sir I am from GGSIPU (Delhi), Today i hava ADA exam and I prepared only your videos, and kudos to your playlist thanku so much!
Kesa gya bhai ?
@@ankushgarg2188 Rula diya yaar, difficult exam aaya tha!
@@abdul_bari Sir 100%, these videos contains even more, thanks sir for replying, you are legend, and god for us!
@@abdul_bari Sir...ur videos are very helpful 😇 ur way of teaching, deep knowledge of the this subject 👏
Lots of love and huge respect 😇
From🇮🇳
You are truly a saviour,
Tysm.
i never hated any subject until i encountered Design and analysis of algorithms. also my university prof who makes the ppr so difficult and calculative.
In 6:35 it was actually 22.Also thanks for a great video!
Sir, Thank you so much for the video. Best explanation I have seen. Expecting more videos.
I like ur way of teaching... Ur teaching is very clear sir about the topic
I want to salute u sir for your efforts in making such amazing videos. It made all my concepts clear. Thank you sir
Thanks for telling us how the formula works :)))))))
you're amazing thank you so much for your effort
A very good explanation. Thank you.
Thank you sir it's a very understandable example 🙏🙏
Hemanth on fire 🔥🔥🔥
😂
😂
Sir, first of all, thank you very much for the wonderful content.
Sir, it looks like you have not covered some contents from Algorithms, which is generally part of the syllabus. So I request you to cover the following contents also:
Lower-Bound Theory:
Introduction to Algebraic problems, Introduction to lower bounds, Comparison Trees,Techniques for Algebraic problems, Some Lower Bounds on Parallel Computation
Thank you very much Sir.
Thank you sir, for your great explanation. 🙏🙏
@7:46 when he said: this is the optimal binary search tree! I made dua for this teacher.
Sir you have explained the concepts so well.
If you are a faculty in our college we always rock in the exams Your lectures are Superb sir 👏👏👏👏👏👏👏🙏🙏🙏🙏
14:45 top moment, thank you
Thank you so much for the explanation! It helped me a lot!
Thank finally I understand it :D
The video is like explaining the steps involved but i need the reason behind why we are doing ot in that way?
read the book h.cormen for why's of everything
Check leetcode site
true mann. he is just writing the steps involved
Your teaching is great sir
This is the best explanation I have found on You tube thanks
great content ! thank you
Nice explaining sir
It's some what difficult problem to solve but this video made it easy for implementing
Yeah I saw it quite easier
Thank you very much. You are a genius. 👍👍🔝🔝🙏🙏👌👌
Big Thanks sir ......you are awesome.
We can also directly generate tree by taking max frequency key as an root.
Does this work all the time?
Btw tq for that, 😅
강의 감사합니다~!!
I would've given up my final exams if you were not here.
Hi Sir,
Really Informative, great use of examples . I am able to grasp the content so well..
Just a quick suggestion, could you also device the algorithm or pseudo-code at the end, to help us get a more generalized view on solving the problem.
Maybe next time. Or Sir u can add like a Part-2 for this video
Amazing explanation!!!! Thank you so much!
sir,could you explain how to generate a tree from the data at the end?
Thanks Abdul, you the real g, if you need a homie, hit me up
Nice explanation sir aapke sabhi videos bahot hi ache se samjh ate hain thanks
Very good teaching 😊
Formula = c[I,j]={c[I,k]+c[k+1,j]+weight}
Where k values are
C[0,3] then k values are 0,1,2
Then I=0 and j=3
Substitute the values
C[0,0]+C[1,3]+12
Hope it helps
Why did u only took k=0,but k can be 1,2 also??
@@naveen_kotha That was just a part of that example. Yes k can also be 1 and 2
Thanks for formula
wonderfully taught.
but u should have explained formula in the start and not revealed it at the end.
that wud have made it better
Totally agree, had me scratching my head the whole time.
Dear sir, are you going to take session on data structure and advanced data structures like you give session on algorithm . It is wonderful.
again great sir.
before you start filling the matrix , please mention what is the behind filling like that ..for example.....telling that j-i=1 but what is the motive of doing that because when i will get a problem i will not start thinking like first i-j=1 then i-j=2 ..in fact i will start thinking it practically why i need to do that then converting it into matrix .l have seen you explaining like this before also . al though everytime i am able to figure out why it is needed bt still start with the motive why we need to proceed like that.
Good work!!
I observe one thing in the above problem that consider the frequencies in descending order and then form binary search tree. We get answer(you need cost then find the cost from tree)
Please clarify my query..
1. when j-i =1 -> Here we calculated the cost for all the 4 keys (10, 20, 30 40)
2. when j-i =2 -> Why do we only take these 3 combination (10, 20) (20, 30) (30, 40) only ??
3. As we already know to select 2 keys out for keys is 4C2 => 6
4. So why we dont consider (10, 40) (10, 30) (20 40)
5. |||y for 3 pairs and so on ??
Could you please clarify this point .. ?? Thanks in Advance..
Explanation part was good, but as dint know the formula earlier it was a bit confusing in between...
@14:45 how are you getting the values using formula.....and also please tell how u calculated it in brief? Sir.....thank you.....I am finding it very difficult to understand this part.
same problem
if any one knows pls replay
How many engineers out here, give a like.
6:32 answer is by adding the values 22
Ya i also noticed
just wow! it was great...
Sir which books you have referred to gain this much knowledge ❤️
Your explanation is great, but I was kind of confused about the 9:05, when you conduct j-i, I do not understand the meaning of j-i, and the meaning of l, what that expression stands for? and why we use 1 represent 10, 2 represent 20 and so on, if we use 4 represent 10 ,it is a different story.
a quick shortcut for exam or observation just add the corresponding element from the row and column u are supposed to find....
for example u want to find
c[0,3]=(0,0)+(3,1),(0,1)+(3,2),(0,2)+(3,3) hope u found the pattern...
Great Content sir.
6:32 How it came 18?? It will be 22.. Right?
yeah even i was shocked, but I guess its a minor mistake
yeah, I was like wtf happened haha
yeah 15+3+4=22,Sir unexpectedly did a mistake.
Yaa right
Tqqq sir..this video useful sir
Great sir thnk u very much
first see the formla and then see it will be of great help 29:29
superb ....explanation thank you and do more
ABDUL BARI I LOVE YOU SO MUCH
thank you sir for your better techer thank you a lot sir
I did'nt Understand this really
Best tutorial
thank you!
Very confusing, but watching till end made it clear
Ok sir, got it :-)
This video is very helpful..Thank you so much sir.It is really easy to understand..
We love you ❤😊, sir
Ideal speed for 2x speed
thank you so much
For this to work keys should be in sorted order or not?
@Abdul Bari - Sir How did you get 4(3,4) as 4 not 3 ? can you please explain
good job man
Sir , I had a dought that what if the values of q1,q2 .....are not given 🤔🤔🤔🤔🤔🤔🤔🤔
Thank you, sir!
Sir which ide you use for coding?
Thank you.
Sir please explain with algorithm
thankyou sir u explained well
best explanation