Unique Binary Search Trees | Count all structurally unique BSTs | Catalan number | Leetcode #96
HTML-код
- Опубликовано: 9 фев 2025
- This video explains a very important programming interview problem which is to count the number of structurally unique binary search trees (BSTs) having N nodes.I have shown the idea of conversion of this problem from given state to finding the Nth catalan number.This problem can be solved by recursion, dynamic programming and also simply by using the binomial formula for finding Nth catalan number.I have taken sufficient examples to show the intuition and approach and at the end of the video, i have also shown the code walk-through. 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 :)
=================================================================
INSTAGRAM: / surya.pratap.k
LinkedIn: / surya-pratap-kahar-47b...
WEBSITE: techdose.co.in/
=================================================================
CODE LINK: gist.github.co...
CATALAN NUMBER: • How to calculate Catal...
Most intuitive, thanks a ton buddy, I was reading Leetcode blogs for 3 days with all crappy methods, yours is simply brilliant and clear !
This explanation helped me to solve another famous problem ''intersecting chords in a cirlce". Thank you tech dose.
Welcome :)
how did you solve that by using this?
@@vipulsharma7190 Because it can be solved using catalan number method.
Suppose you a have a circle wihtout any cuts then it is complete 1 unit.
But when you make 1 cut then circle is distributed in two parts. (1+1=2). Then when you make the second cut total number of parts of the circle will be 2 parts pahle se the + 2 (because this is the second cut) . Now in total you have 4 cuts. And now if you cut the third cut then 4 pahle se + 3(because this is the third cut). So total parts of circle is 7. Again if make the 4th cut then 7 + 4 (4 becauae this is the 4th cut) So total parts of circle = 11.
And this is how it goes on which can be solved with the help of catalan number method.
@@shresthmishra9329 thanks bro for explanation
@@vipulsharma7190 ☺️
The man , the myth , the legend uploads once again!
😅
Coldzera!!!!
This channel is very underrated. Nice explanation!
Thanks
@@techdose4u can u share the link where u exaplained Catalan number
The only time JEE level maths was used again.
Very Helpful Videos. Please keep posting
5:21, one small correction, the correct formula will be Cn=∑i=0,n−1 (CiCn−i−1. ) It will go to n-1, not upto n.
Such a great video explanation ☺️😊.. thank you sir
Welcome
Great video . I think you are an Indian because no one in youtube could teach better than Indian ...... atleast cse concepts :) ###nitjstudenthere
class Solution {
long long dp[100000]={0};
int catalan(int n)
{
if(n==0)
{
return 1;
}
if(dp[n]!=0)
{
return dp[n];
}
int ans=0;
for(int i=1;i
👍
very good video, first time subscriber, want to check out your other videos too. your implementation is Order of n square. Order of n implementation is " long Cn=1;
for(int n=0;n
In interviews, you can be expected to explain more than one approach. So you should always be prepared.
Yes true
Great explanation
Thanks :)
Very well explained. Subbed!
Thanks 😊
This is very helpful bro ... Thanks a lot..
Welcome :)
As always, great explanation
Thanks
very clear explanation. Thank you.
Hey, your channel is great and your explanations are very nice. I also noticed that your handwriting is very legible. What's the setup you use for whiteboarding? Do you do it using a digital drawing pad?
You should add this to your tree playlist.
Sure
very helpful. thanks
Welcome
Helpful video 😊 too much for interview
Thank you always
Welcome
Nice explanation sir...
Thanks :)
thank u sir!
thanks
Brillaint 3xplanation bro!!!
Thanks
5:22 You wrote Catalan number wrong. It should be C(n+1) = Sigma...
when n=4;
C0=0;
C1=1;
C2=2;
C3=3;
= C0*C1 + C1*C2 + C2*C1 + C3*C
= 0*3 + 1*2 + 2*1 + 3*0
= 4.
But 4 is wrong. Please let me know if I am wrong.
In short, this is the formula:
Catalan Number = (2n)!/((n+1)!*n!)
Right
Thank you by watching this video alone I know how to solve it. What about 95. Unique Binary Search Trees II ? I think it's much harder than this.
Yea it must be!! Since you told me 😅 lol
first example binary search tree (BST) structure is invalid .
All nodes in the right subtree of a node must have values greater than the node's value.
All nodes in the left subtree of a node must have values lesser than the node's value.
best
Itna mazaa kyu aa rha haiii😀
😂
I am viewing the solution directly , i couldn't think of any method to solve it , is it alright or should i change my approch.
If you made no progress in 30 minutes then look at the solution.
It's alright. You don't have to know everything. Just keep learning new concepts.
AND.. how are we supposed to come up with this formula during interview ? NOP , not intuitive
Hi, could you please upload a video to generate unique binary search tree in the range [1,n] please
Sure. That is an extended question.
int count_BT(int n){
if(n
Can you please clear my doubt as to why and how we would have only 3 combinations of 2,3,4 (i.e. c3) in the right subtree when taking 1 as a root? Why won't there be 5 structurally unique combinations at there (for 2,3,4) because we would get 5 as a answer when we have n=3?
Actually C3 means count of no of unique BSTs with 3 unique numbers. It is not an exact value. Think of it as an unknown constant.
@@techdose4u ohk..thanks!
Can anyone explain why T[0] is taken as 1? If there are no nodes then shouldn't total bst be 0?
No structure is a unique structure.
jab sb kuch dusre video se hi dekhna tha toh ye video kyu bnaye ??