1楼:綉乞群群
递归算法:
typedef strct node
*bitree;
int depth(bitree bt)
2楼:匿名用户
节点不同就不止5种,节点一样就有5种
由3 个结点可以构造出多少种不同的二叉树
3楼:匿名用户
30种。三个不同的结点可以构成30种不同的二叉树。
其中树的形态有5种,每种形态下的排列有3!个
4楼:匿名用户
能组bai成5种形态的二叉du
树。n个节点能组成多少种二叉zhi
树,思想:递归+组合
当n=1时,只有1个根节点,则只能组成1种形态的二叉树,令n个节点可组成的二叉树数量表示为h(n),
则h(1)=1;
当n=2时,1个根节点固定,还有n-1个节点,可以作为左子树,也可以作为右子树,
即:h(2)=h(0)*h(1)+h(1)*h(0)=2,则能组成2种形态的二叉树。这里h(0)表示空,所以只能算一种形态,即h(0)=1;
当n=3时,1个根节点固定,还有n-1=2个节点,可以在左子树或右子树,
即:h(3)=h(0)*h(2)+h(1)*h(1)+h(2)*h(0)=5,则能组成5种形态的二叉树。
以此类推,当n>=2时,可组成的二叉树数量为h(n)=h(0)*h(n-1)+h(1)*h(n-2)+...+h(n-1)*h(0)种。
即符合catalan数的定义,可直接利用通项公式得出结果。
递归式:
h(n)=h(n-1)*(4*n-2)/(n+1);
该递推关系的解为:
h(n)=c(2n,n)/(n+1)(n=1,2,3,...)
数据结构问题 由4个节点可以构造出多少种不同的二叉树?
5楼:仁昌居士
由4个节点可以构造出14种不同
的二叉树。二叉树节点公式:b[n] = c[n,2n] / (n+1)。
二叉树组合数c[n,2n]的n为上标,2n为下标,将n=4代入公式,可以得出,b[4] = c[4,8] / (4+1) = 8! / (4! * 4!
* 5) = 8*7*6/(4*3*2) = 14。
6楼:城兴有焦卯
看了你上面的理解,你可能认为1节点和2、3、4节点不同,其实4个节点是相同的。例如:12
\\34
\\21
\\43
这两个是相同的,因为节点是相同的!所以你上面的理解有重复出现的情况,所以才会多!
由3个结点可以构造出多少种不同的二叉树
7楼:匿名用户
30种。
3个结点的二叉树形态有5种
每种形态可以有构造二叉树3!种
因此总共有30种不同的二叉树。
由3 个结点可以构造出多少种不同的二叉树
8楼:匿名用户
30种不同的二叉树。
三个结点的二叉树有5中形态
两层二叉树1种,三层二叉树4种
而每种形态的由三不同的结点构成的二叉树,可以构建有3!种不同的二叉树。因此总共有30种不同的二叉树。
由3 个结点可以构造出多少种不同的二叉树
9楼:千天玉斯魁
5种。看一下这里的说明(http://******blogs.***/shanezhang/p/4102581.html)
标准表达式为f(n)
=f(n-1)f(0)
+f(n-2)f(1)
+f(n-3)f(2)
+...
+f(1)f(n-2)
+f(n-1)f(0)。
10楼:angela韩雪倩
能组成5种形态的二叉树。
当n=1时,只有1个根节点,则只能组成1种形态的二叉树,令n个节点可组成的二叉树数量表示为h(n),则h(1)=1。
当n=2时,1个根节点固定,还有n-1个节点,可以作为左子树,也可以作为右子树,即:h(2)=h(0)*h(1)+h(1)*h(0)=2,则能组成2种形态的二叉树。这里h(0)表示空,所以只能算一种形态,即h(0)=1。
当n=3时,1个根节点固定,还有n-1=2个节点,可以在左子树或右子树,即:h(3)=h(0)*h(2)+h(1)*h(1)+h(2)*h(0)=5,则能组成5种形态的二叉树。
以此类推,当n>=2时,可组成的二叉树数量为h(n)=h(0)*h(n-1)+h(1)*h(n-2)+...+h(n-1)*h(0)种。
即符合catalan数的定义,可直接利用通项公式得出结果。
递归式:h(n)=h(n-1)*(4*n-2)/(n+1)。
该递推关系的解为:h(n)=c(2n,n)/(n+1)(n=1,2,3,...)
由3 个结点可以构造出多少种不同的二叉树
11楼:九筷千布了了了
您好! 如果是说结构的话,应该是5种没错!
如果不是5的话那么应该a b c 是二叉树的值 问你可以构成几个不同值的数,
这个问题的答案是12 希望对您有帮助!
1.由三个结点可以构造多少个不同的二叉树?(原因)
12楼:桐菊汗姬
没看到你那第二个问题,
“二叉树根结点的层次为0”
我不明白为什么根结点的层次会是0的呢?
根结点的层次应该是1才对的。
我那答案是层次1的。
13楼:匿名用户
1.由三个结点可来以构造5个不同自
的二叉树,
1个顶点,剩下2个,只有左子树2种,只有右子树2种,左右子树都有1个2.二叉树根结点的层次为0,对含有100个结点的二叉树,可能最大树深度和最小树深度分别是?和 ?
解答: 最大深度,就是只有一边的时候,1层1个节点,有100深度。
最小深度,就是完全二叉树的时候,除叶结点可能不满外,其他都满的,└log2 n┘+1 =7
这个是性质:具有n个结点的完全二叉树的深度为 └log2 n┘+1
14楼:
1)每个节点没有区别抄的可以构造5种
(1)满树 1种
(2)单子树的4种 根 左 左;根左右;根右左;跟右右;
有区别(不同节点在不同位置算一种,
由于每种树形有三个位置,故,每种树形有p(3,3)种方法,安排每个节点的位置) 共有每个5*p(3,3)=5*6=30种2)含有100个结点的二叉树,可能最大树深度和最小树深度分别是100 (每个节点只有一个子树),最小深度为 log2(100-1) =7(向上取整2^6=64,2^7=128;64<100<128 )
根结点为0不算叶点的深度为最大99,最小6 算叶子结点100,7
15楼:匿名用户
3个结点可以构成5种形态的二叉树:根左左、根左右、左根右、根右右、根右左
因为根的层次
内为0,100个结点二容叉树可能的最大深度就是100-1=99,为每层只有一个结点,最小的深度为log2n下取整,也就是log2(100) 下取整,为6
用三个结点a,b,c可以构造多少种不同的二叉树
16楼:匿名用户
如果是说结构的话,应该是5种没错,
如果不是5的话那么应该a b c 是二叉树
的值 问你可以构成几个不同值的数。
17楼:逆风飞扬余
5种!!
a是根节点,a的右孩子为b,b的右孩子为c。
a是根节点,a的右孩子为b,b的左孩子为c。
a是根节点,a的左孩子为b,b的左孩子为c。
a是根节点,a的左孩子为b,b的右孩子为c。
a是根节点,a的左孩子为b,a的右孩子为c。
数据结构中,森林转换为二叉树的结果是否唯一
1楼 鱼厌河 我觉得由于森林无法确定谁是第一颗树,所以不唯一 把一棵树转换为二叉树后,这棵树的形态是唯一的吗 2楼 木叶之窗 树到二叉树的转换 除了根节点的兄弟结点之间连线,然后去掉初长子之外的连线 得出来的树没有右子树 森林转化为二叉树的步骤 1 先将森林中的每棵树变为二叉树 2 再将各二叉树的根...