第8章+图论-8(树)--离散数学-图论课件.ppt
《第8章+图论-8(树)--离散数学-图论课件.ppt》由会员分享,可在线阅读,更多相关《第8章+图论-8(树)--离散数学-图论课件.ppt(43页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1返回 结束第八章 图论-28.1 Euler图与图与Hamilton图图8.2 树树8.2.1 树的概念和基本性质8.2.2 几类常用树根树 最优二叉树8.2.3 8.3 2返回 结束8.2 树树 树的术语起源于植物学和家谱学。早在1857年,英国数学Arthur Cayley(18211895)就发现了树,当时他正在试图列举形为CnH2n+2的化合物的同分异构体。树具有广泛的应用,特别在计算机科学与管理科学中。如用树构造存储和传输数据的有效编码,用树构造最便宜的电话线连接分布式计算机网络,用树模拟一系列决策完成的过程等。3返回 结束8.2.1 树的概念和基本性质树的概念和基本性质v在图论中
2、:1、连通的无环图称为树树。2、除根之外,度1的顶点称为叶子叶子,度1的顶点称为分支分支点点或者内点内点。叶子叶子分支点分支点根根4返回 结束8.2.1 树的概念和基本性质树的概念和基本性质3、多个树称为森林森林;4、孤立顶点叫做平凡树平凡树。123456789101512131114平凡树平凡树5返回 结束6返回 结束1根树根树8.2.2 几类常用树几类常用树有向树有向树 一个弱连通有向图,若去掉方向后得到一一个弱连通有向图,若去掉方向后得到一棵树,则称此有向图为一棵有向树,记为棵树,则称此有向图为一棵有向树,记为T。根树根树 一棵有向树一棵有向树T,若其中有且仅有一个结点,若其中有且仅有一
3、个结点v0的入度为的入度为0,其余结点的入度为,其余结点的入度为1,则称,则称T是一棵以是一棵以v0为根的根树或为根的根树或外向树外向树。其中出度为。其中出度为0的结点称为的结点称为有根树的叶子。有根树的叶子。把外向树之定向反过来,得到的有向树叫内向树内向树。v0v07返回 结束8.2.2 几类常用树几类常用树v根树通常画成倒长的;v一个 结点的子结点画在它的v下一层,边的方向省略;v“同辈兄弟”画在同一层。8返回 结束8.2.2 几类常用树几类常用树树的高度树的高度 设有根树设有根树 T=(V,A),v0为树根。为树根。u V的深度是从的深度是从v0 开始到达开始到达u的有向路的长度,的有向
4、路的长度,T的高度是从的高度是从v0到到T的叶子的最长路的长度。的叶子的最长路的长度。根结点深度为根结点深度为0,称为第,称为第0层;层;深度同为深度同为i 的结点构成树的第的结点构成树的第i 层;层;具有最大深度的结点的深度称为树的深度具有最大深度的结点的深度称为树的深度(高度)。(高度)。9返回 结束10返回 结束8.2.2 几类常用树几类常用树2有序树有序树定义定义 对有向树对有向树 T=(V,A),若,若 u,v V且且 A,则称,则称 u为为v的父亲,的父亲,v为为u的儿子。若从的儿子。若从u到到v存在有向道路,存在有向道路,则称则称u是是v的祖先,的祖先,v是是u的后代(子孙)的后
5、代(子孙)有序树有序树 将各树的每个结点的所有儿子按次序排列,将各树的每个结点的所有儿子按次序排列,称这样的根树为有序树。称这样的根树为有序树。有序树的每个结点的出度小于或等于有序树的每个结点的出度小于或等于m时,称为时,称为m叉叉有序树。有序树。有序树的每个结点的出度只为有序树的每个结点的出度只为 0或或 m 时,称为时,称为m叉叉正则有序树。正则有序树。11返回 结束8.2.2 几类常用树几类常用树v例 设有4个银币,已知其中3个一定是真的,真假的区别在于银币的重量,现用一天平设法找出假币。解:用a、b、c、d分别表示银币,a:b表示在天平上作比较。a:ba:cc重c轻a:dd重全真d轻a
6、:ca轻b重a:cb轻a重12返回 结束13返回 结束8.2.2 几类常用树几类常用树三三、最优二叉树最优二叉树二叉树二叉树 除树叶外,每个结点的最多有两个子结点,分别称为除树叶外,每个结点的最多有两个子结点,分别称为左子结点和右子结点的根树称为二叉树左子结点和右子结点的根树称为二叉树二叉树的另外一个定义:二叉树或者是空树,或者有一个二叉树的另外一个定义:二叉树或者是空树,或者有一个根结点和两个分别称为左右子树的二叉树构成。根结点和两个分别称为左右子树的二叉树构成。二叉树的性质二叉树的性质1)第第i 层的结点数最多为层的结点数最多为2i;2)深度为深度为k的二叉树最多有的二叉树最多有2k+1-
7、1个结点;个结点;3)记二叉树出度为记二叉树出度为2的结点数目为的结点数目为n2,叶子数目为,叶子数目为n0,则有:,则有:n0=n2+14)多元树与二叉树的对应关系:以结点的最左儿子为对应二叉树中多元树与二叉树的对应关系:以结点的最左儿子为对应二叉树中该结点的左儿子;以结点的右兄弟为对应二叉树中该结点的右儿该结点的左儿子;以结点的右兄弟为对应二叉树中该结点的右儿子。子。14返回 结束15返回 结束8.2.2 几类常用树几类常用树高度为高度为k的完全二叉树,其的完全二叉树,其k-1层以上结点构成一棵高度层以上结点构成一棵高度为为k-1 的完美二叉树。的完美二叉树。完全二叉树的叶结点或者在同一层
8、或者完全二叉树的叶结点或者在同一层或者 在相邻的两层。在相邻的两层。满二叉树完美二叉树完全二叉树16返回 结束8.2.2 几类常用树几类常用树三三、最优二叉树最优二叉树定义定义设设T是有是有t片叶子的二叉树,其中片叶子的二叉树,其中t片叶子分别带有片叶子分别带有非负实权非负实权 ,则称,则称T为为加权二叉树加权二叉树。称。称W(T)为二叉树为二叉树T的权,其中的权,其中hi为带权为带权wi的树的树叶叶vi的层数。在所有的带权的层数。在所有的带权 的二叉树的二叉树中,带权最小的二叉树称为中,带权最小的二叉树称为最优二叉树最优二叉树(哈夫曼树哈夫曼树)17返回 结束18返回 结束8.2.2 几类常
9、用树几类常用树vHuffmanHuffman树树Huffman 算法算法 给定给定t个非负实数,构造以它们为叶子带权且具有最小个非负实数,构造以它们为叶子带权且具有最小M(T)的最优二叉树。的最优二叉树。(1)i t;(2)若若 i=1 结束;结束;(3)将将 i 个非负实数权由小到大排列成序,以最小的两个个非负实数权由小到大排列成序,以最小的两个数作为左右儿子,构造其父亲结点,并以此左右儿子数作为左右儿子,构造其父亲结点,并以此左右儿子的权值之和作为新构造的父亲结点的权值。在权序列的权值之和作为新构造的父亲结点的权值。在权序列中删去此左右儿子对应的权值,增加新构造的父亲结中删去此左右儿子对应
10、的权值,增加新构造的父亲结点的权值。点的权值。(4)i i-1,转转(2)。19返回 结束8.2.2 几类常用树几类常用树v例:有例:有4个权值个权值7,5,2,4,试构造一棵有,试构造一棵有4个个叶子结点的哈夫曼树。叶子结点的哈夫曼树。20返回 结束8.2.2 几类常用树几类常用树Huffman树树 由由Huffman算法构造的二叉树称算法构造的二叉树称为相对于非负实数权为相对于非负实数权 wi(i=1,2,t)的的Huffman树。树。定理定理 Huffman树是一棵相对于非负实数权树是一棵相对于非负实数权 wi(i=1,2,t)的最优二叉树。的最优二叉树。21返回 结束8.2.2 几类常
11、用树几类常用树定义定义:有一个序列的集合,如果在这个集合中。任何序列都不是另一个序列的前缀,则称这个集合为前缀码前缀码。v例如,001是001011的前缀,集合000,001,01,10,11是前缀码,而1,00,01,000,0001不是前缀码。二元前缀码二元前缀码前缀码前缀码A=1,2,m 中的中的 i 只由两种符号(如只由两种符号(如0、1)组成时,称)组成时,称A为一个为一个二元二元前缀码。前缀码。22返回 结束8.2.2 几类常用树几类常用树v对有序二叉树的顶点编码如下:(1)根不标码;(2)兄弟有序,左为兄,标0,右为弟,标1;(3)从根始到叶上的道路依次抄出各点之码,写在叶下方,
12、称该叶的前缀该叶的前缀;(4)全树的叶从左到有把它们的前缀依次抄出,叫做该树的前缀码该树的前缀码,每个叶子的前缀后加逗号,最后一个叶子前缀后加句号。显然有序二叉树与前缀码一一对应。23返回 结束24返回 结束8.2.2 几类常用树几类常用树Huffman编码编码 以各个源码符号在源码电文中以各个源码符号在源码电文中出现的频率为权值,构造以源码符号为叶子出现的频率为权值,构造以源码符号为叶子的的Huffman树,得到关于源码符号集的一个树,得到关于源码符号集的一个二叉前缀码,称为其二叉前缀码,称为其Huffman编码。编码。定理定理 Huffman编码是关于该源码符号集的最编码是关于该源码符号集
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 图论 离散数学 课件
限制150内