数据结构递归树.ppt
《数据结构递归树.ppt》由会员分享,可在线阅读,更多相关《数据结构递归树.ppt(27页珍藏版)》请在第壹文秘上搜索。
1、部分地包含自身,直接或间接地调用自身定义递归:0 )!1(0 1!nnnnnlong Factor (long n) if(n=0) return 1; else return n*Factor(n-1);参数 计算 返回 0 0!=1 1 参数 计算 返回 1 1*Factor(0) 参数 计算 返回 2 2*Factor(1) 参数 计算 返回 3 3*Factor(2) 主程序main()32101266数据结构递归:typedef struct tNode Elemtype data; tNode *next;tNode,*link;tNode newnode;link list; 树
2、n个结点的有限集合,n1,T:1. 一个根结点root2. rootTTTTm21m21TTT1245673n=0n=11abdefgc树的术语结点=数据项+分枝结点的度叶、分支、子女、双亲、兄弟祖先、子孙结点所处层次树的高度树的度 有序树、无序树森林abdefgcadg二叉树n个结点的集合,T:, n=0T左+T右,n0T= (a)空二叉树AABABACB (b)根和空的左右子树 (c)根和左子树(d)根和右子树 (e)根和左右子树二叉树的性质性质1: 在二叉树的第i层上至多有2i-1个结点(i=1)2453671当i=1时,只有一个根结点,2i-1=20 =1,命题成立。对于j=i-1,假
3、定命题成立,则第j层上至多有2j-1个结点,故第j+1层上最多有2j-1*2即2j个结点,即第i层上最多有2i-1个结点。 证毕。性质3: 对任何一棵二叉树,如果其叶结点数n0,度为2的结点数为n2,则n0n21。性质2:深度为k的二叉树至多有2k1个结点(k=1).kii112证明:设二叉树中度为1的结点数为n1,有: Nn0n1n2 (1)设B为二叉树中的分支总数,则有B=N-1,同时B=n1+2n2,于是有 N=n1+2n2-1 (2)故 n0n212453671满二叉树:深度为k且共有2k-1个结点12345612345712367(a)完全二叉树(b)非完全二叉树( c)非完全二叉树
4、2453671完全二叉树 叶结点出现在最高或次高层对于任意结点,如果 C(Tr)=s,则C(Tl)=s或s+1性质4 具有n个结点的完全二叉树深度为1log2n123452k-11n=2k-12k-1=n1,则双亲【i/2】;2)2in,则i为叶子;否则,其左孩子是2i;3)如果2i1n,则结点i无右孩子;否则,其右孩子是结点2i1。123456123452453671遍历二叉树2453671L DR DLR先(根)序遍历 LDR中(根)序遍历 LRD后(根)序遍历二叉树表达式(a+b*(c-d)-e/f)*a/b-dcfe其先序序列为:-+a*b-cd/ef 其中序序列为:a+b*c-d-e
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据结构 递归
