1、完全二叉树总结点数与叶结点数关系分析,班级:软件一班 姓名:徐政钧 学号:130120010002,对一棵具有n个结点的二叉树按层序编号,如果编号为i(1in)的结点与同样深度的满二叉树中编号为i的结点在二叉树中位值完全相同,则这棵二叉树就称为完全二叉树。,完全二叉树定义,完全二叉树性质:,如果对一棵有n个结点的完全二叉树的结点按层序编号,则对任一结点i(1in),有:(1) 如果i=1,则结点i是二叉树的根,无双亲;如果i1,则其双亲是i/2(2) 如果2in,则结点i无左孩子;如果2in,则其左孩子是2i(3) 如果2i+1n,则结点i无右孩子;如果2i+1n,则其右孩子是2i+1,思路1
2、,思路2,思路1:,先用归纳的方法找出完全二叉树中度为1的结点个数n1与总结点数N的关系,下面给出结点数N=1、2、3、4的完全二叉树,如下图,N=1 n1=0,N=2 n1=1,N=3 n1=0,N=4 n1=1,通过观察不难发现,度为1的结点个数n1=0,1,0,1 n为奇数时,n1=0,n为偶数时,n1=1;-(1) 总结点个数可以表示为N=n0+n1+n2; -(2) 结点总数=二叉树分支数+1; 二叉树分支数=0*no+1*n1+2*n2 故N=1*n1+2*n2+1 - - -(3) 由(2)(3)得 n0=n2+1 -(4) 由(2)(4)得 N=n0+n1+(n0-1)-(5)
3、 最终由(1)(5)得当N为奇数时,N=2n0-1,n0=(N+1)/2 当N为偶数时,N=2n0, n0=N/2,返回,思路2:,将完全二叉树的结点按层序(从上到下,从左到右)从1开始编号,则N个结点的完全二叉树中,最后一个结点的编号为N,根据完全二叉树的性质,编号为N的结点的父节点编号为【N/2】,如图所示:,N为奇数,思路2:,将完全二叉树的结点按层序(从上到下,从左到右)从1开始编号,则N个结点的完全二叉树中,最后一个结点的编号为N,根据完全二叉树的性质,编号为N的结点的父节点编号为【N/2】,如图所示:,叶结点个数为总结点个数减去分支结点个数,而最后结点的父节点是最后一个分支结点,所以叶结点个数n0=N- 【N/2】,返回,谢谢观看,