数据结构二叉树ppt课件.ppt
《数据结构二叉树ppt课件.ppt》由会员分享,可在线阅读,更多相关《数据结构二叉树ppt课件.ppt(42页珍藏版)》请在三一办公上搜索。
1、校长,一系,二系,三系,六系,教务处,科研处,总务处,601,602,教务科,603,A,B,C,D,例1,工厂,例3,1 树的基本概念,2 树的存储结构,3 二叉树,4 二叉树的存储结构,5 二叉树的遍历,6 线索二叉树,6.1 树的基本概念,1. 有且仅有一个结点没有前驱结点,该结点为树的根结点。,2. 除了根结点外,每个结点有且仅有一个直接前驱结点。,3. 包括根结点在内,每个结点可以有多个后继结点。,4. 树形表示法,1. 结点的度:2. 树的度:,3. 叶结点:4. 分支结点:,5. 层次的定义:,该结点拥有的子树的数目。,树中结点度的最大值。,度为0 的结点.,度非0 的结点.,根
2、结点为第一层,若某结点在第i 层, 则其孩子结点(若存在)为第i+1层.,7. 树林(森林): m0 棵不相交的树组成的树的集合.,8. 树的有序性:,6. 树的深度:,树中结点所处的最大层次数.,若树中结点的子树的相对位置不能 随意改变, 则称该树为有序树,否 则称该树为无序树。,二叉树的基本形态:,(空),6.2 二叉树,二. 两种特殊形态的二叉树,1. 一棵非空二叉树的第i 层最多有2i1个结点(i1)。,2. 深度为h 的非空二叉树最多有2h -1个结点.,3. 若非空二叉树有n0个叶结点,有n2个度为2的结点, 则 n0=n2+1,4. 具有n个结点的完全二叉树的深度h=log2n+
3、1.,二叉树的存储结构,一.二叉树的顺序存储结构,1. 完全二叉树的顺序存储结构,2. 一般二叉树的顺序存储结构,二.二叉树的链式存储结构(二叉链表),二.前序遍历,三.中序遍历,四.后序遍历,前序遍历序列: A, B, D, K, J, G, C, F, I, E, H,中序遍历序列: D, B, G, J, K, A, F, I, E, C, H,后序遍历序列: D, G, J, K, B, E, I, F, H, C, A,按层次遍历序列: A, B, C, D, K, F, H, J, I, G, E,6.3.2 线索二叉树,1.何谓线索二叉树? 遍历结果是求得结点的一个线性序列。指向
4、该线性序列“前驱”和“后继”的指针,称“线索”;包含“线索”的存储结构,称为“线索链表”;与其相应的二叉树,称为“线索二叉树”;对二叉树以某种次序遍历,使其变为线索二叉树的过程,称为“线索化”。,2.线索链表中结点的结构,在二叉链表的结点结构中增加两个标志域,并规定:,其中:LTag =,0 lchild 域指示结点的左孩子1 lchild 域指示结点的前驱,RTag =,0 rchild 域指示结点的右孩子1 rchild 域指示结点的后继,二叉树二叉线索存储表示,typedef enum Link, Thread PointerThr; / Link=0:指针,Thread=1:线索typ
5、edef struct BiThrNode TElemType data; Struct BiThrNode *lchild, *rchild; / 左右孩子指针 PointerThr LTag, RTag; / 左右标志 BiThrNode, *BiThrTree;,3.线索二叉树图例,线索二叉树及其存储结构 (a)中序线索二叉树 (b)中序线索链表,如何在线索树中找结点的后继?,结合中序线索树 若其右标志为“1”,右链是线索,右链直接指示了结点的后继; 若其右标志为“0”,右链是指针,其后继为右子树中最左下的结点。,如何在线索树中找结点的前驱?,结合中序线索树 若其左标志为“1”,左链为线
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据结构 二叉 ppt 课件

链接地址:https://www.31ppt.com/p-1338518.html