Given n nodes. Find the number of different structural
binary trees that can be formed using the nodes.

Answers were Sorted based on User's Feedback



Given n nodes. Find the number of different structural binary trees that can be formed using the no..

Answer / hitesh viradiya

m = 1 2 3 4 5 6 7 8
n=1 1
2 1 1
3 2 2 1
4 5 5 3 1
5 14 14 9 4 1
6 42 42 28 14 5 1
7 132 132 90 48 20 6 1
8 429 429 297 165 75 27 7 1

(2n)!/[(n+1)!n!]

Is This Answer Correct ?    135 Yes 16 No

Given n nodes. Find the number of different structural binary trees that can be formed using the no..

Answer / kathir

There are 2 pointers available for each node.
So we can have 2*n pointers totally.

Total no. of edges = n-1

So, Null pointers = n+1.

We need to choose (n-1) pointers from 2n pointers.

So the combination results in (2n)C(n-1).

We can have n distinct roots possible.

So, answer will be (2n) C (n-1) / n.

which leads to,

{2n C n}/{n+1}. ( Unlabelled )


Labelled Structured tree will be,

{2n C n}/{n+1} * {n!}

Is This Answer Correct ?    30 Yes 6 No

Given n nodes. Find the number of different structural binary trees that can be formed using the no..

Answer / durga prasad sahoo

No. of labeled binary tree :

n^(n-2)

No. unlabeled binary tree :

(2n)!/[(n+1)!.n!] (this is known as catlon number)

Is This Answer Correct ?    25 Yes 12 No

Given n nodes. Find the number of different structural binary trees that can be formed using the no..

Answer / atul barve

No. of labeled binary tree :

{(2n)!/[(n+1)!.n!]}*n!

No. unlabeled binary tree :

(2n)!/[(n+1)!.n!] (this is known as catlon number)

Is This Answer Correct ?    19 Yes 11 No

Given n nodes. Find the number of different structural binary trees that can be formed using the no..

Answer / neha shah

(2n)!/(n+1)!*n!

Is This Answer Correct ?    5 Yes 0 No

Given n nodes. Find the number of different structural binary trees that can be formed using the no..

Answer / fawad ghafoor

The number of different trees with 8 nodes is 248
2^n - n

Is This Answer Correct ?    5 Yes 0 No

Given n nodes. Find the number of different structural binary trees that can be formed using the no..

Answer / ajeet

int countTrees(int num)
{
if(num<=1)
return 1;
else
{
int root,left,right,sum=0;
for(root=1;root<=num;root++)
{
left=countTrees(root-1);
right=countTrees(num-root);
sum+=left*right;
}
return sum;
}
}

Is This Answer Correct ?    5 Yes 1 No

Given n nodes. Find the number of different structural binary trees that can be formed using the no..

Answer / munyazikwiye pierre celestin

(2n)!/[(n+1)!*n!]

Is This Answer Correct ?    2 Yes 0 No

Given n nodes. Find the number of different structural binary trees that can be formed using the no..

Answer / sayandip ghosh

The max number of binary trees that can be formed from n
nodes is given by the Catlan Number C(n).

C(n) = (2n)! / (n+1)!*n! for n>=0.

int findNoTree(int low ,int high)
{
int sum=0;
if(low<=high)
{
for(int k=low;k<=high;k++)
{
if(k==low)
sum+=findNoTree(low+1,high);
else
{
if(k==high)
sum+=findNoTree(low,high-1);
else

sum=sum+findNoTree(low,k-1)*findNoTree(k+1,high);
}
}

return sum;
}
return 1;
}

Is This Answer Correct ?    2 Yes 1 No

Given n nodes. Find the number of different structural binary trees that can be formed using the no..

Answer / sachin

(2n)!/(n+1)!

Is This Answer Correct ?    0 Yes 2 No

Post New Answer

More C Code Interview Questions

Write a program to check whether the number is prime and also check if it there i n fibonacci series, then return true otherwise return false

1 Answers   Cognizant, lenovo,


int aaa() {printf(“Hi”);} int bbb(){printf(“hello”);} iny ccc(){printf(“bye”);} main() { int ( * ptr[3]) (); ptr[0] = aaa; ptr[1] = bbb; ptr[2] =ccc; ptr[2](); }

1 Answers  


How do I write a program to print proper subset of given string . Eg :input: abc output:{},{a},{b},{c},{a,b},{a,c},{b,c}, {a,b,c}.I desperately need this program please mail me to saravana6m@gmail.com

11 Answers   Deshaw, Infosys,


main() { int a[10]; printf("%d",*a+1-*a+3); }

1 Answers  


why java is platform independent?

13 Answers   Wipro,


program to Reverse a linked list

12 Answers   Aricent, Microsoft, Ness Technologies,


main() { char p[ ]="%d\n"; p[1] = 'c'; printf(p,65); }

2 Answers  


main() { int a=2,*f1,*f2; f1=f2=&a; *f2+=*f2+=a+=2.5; printf("\n%d %d %d",a,*f1,*f2); }

6 Answers  


int a=1; printf("%d %d %d",a++,a++,a); need o/p in 'c' and what explanation too

1 Answers  


main() { int i=5; printf("%d",++i++); }

1 Answers  


How to palindrom string in c language?

6 Answers   Google,


main() { int x=5; clrscr(); for(;x<= 0;x--) { printf("x=%d ", x--); } } a. 5, 3, 1 b. 5, 2, 1, c. 5, 3, 1, -1, 3 d. –3, -1, 1, 3, 5

2 Answers   HCL,


Categories