离散数学sec9 树
- 格式:pptx
- 大小:464.99 KB
- 文档页数:47
离散数学树
离散数学中的树(Tree)是一种常见的图论结构,它是一种无向、连通且没有简单回路的无向图,或者是一个有向连通图,其中每个节点都只有唯一一个父节点(除了根节点)。
树形结构中的每一个节点都可以视为一个子树的根节点,因为它下面连接了若干个子节点,这样就形成了一棵向下生长的树状结构。
树形结构还有一个重要的特点就是它具有很好的递归性质,因为每个节点下面都可以再建立一棵子树,这样就可以逐层递归地构建出整棵树。
在离散数学中,树被广泛应用于算法设计、数据结构以及对计算机网络和信息系统进行建模等领域。
树的深度和广度优先遍历、树的一些基本性质(如高度、度、叶子节点等)以及树的遍历应用在图的搜索算法、排序、哈夫曼编码、抽象语法树等算法中都有广泛的应用。
离散数学是数学的一个重要分支,它研究的是离散的对象和离散的结构。
图论作为离散数学的分支之一,研究的是图的性质和结构。
在离散数学中,图的树是一种重要的概念,而生成树则是树的一种特殊类型。
本文将介绍图的树以及生成树的计数算法。
在图论中,图是由节点和边组成的集合。
树是一种特殊的图,它是一个无环图,并且其中的任意两个节点都是通过唯一的路径连接在一起的。
树的一个重要性质是它具有n个节点的话,就有n-1条边。
这个性质可以通过归纳法进行证明。
生成树是图的一个特殊类型,它是包含所有节点并且没有环的子图。
图中可能存在多个生成树,而生成树的计数是一个重要的问题。
一个图有多少种不同的生成树取决于图的结构和节点之间的连接关系。
在计算生成树数量时,有一些经典的算法可以使用。
其中,几个著名的算法包括Matrix Tree 定理、Kirchhoff定理和Prufer编码。
Matrix Tree 定理是一个重要的生成树计数定理。
该定理指出,一个图的生成树数量等于其拉普拉斯矩阵中任意一个不连通的块的行列式。
拉普拉斯矩阵是一个图的特殊矩阵,其中的元素是节点之间的连接关系。
通过计算拉普拉斯矩阵的行列式,我们可以得到图的生成树数量。
Kirchhoff定理是图论中的另一个重要定理。
它指出,一个图的所有生成树组成的集合,可以通过这个图的基尔霍夫矩阵的任意一个不连通部分的代数余子式求和得到。
基尔霍夫矩阵是一个与图的边相关的矩阵,通过对基尔霍夫矩阵的计算,我们可以得到图的生成树数量。
Prufer编码是一个用于计算生成树数量的编码技术。
在Prufer编码中,我们将图的生成树转化为一个特殊的序列。
通过对这个序列的计算和转化,我们可以得到图的生成树数量。
Prufer编码是一个相对简单的方法,但它可以应用于不同类型的图,因此是一个实用且灵活的生成树计数方法。
总之,在离散数学中,图的树和生成树是重要的概念。
图的树是一种无环图,而生成树是包含所有节点且没有环的子图。
离散数学知识点总结(9)-树⼀、⽆向树和有向树对于任何⽆向图,若图中不存在简单回路,则 m≤n-1⽆向图是⽆向树的四个条件互相等价:连通、不存在简单回路、m=n-1满⾜⾄少2个 每⼀对相异顶点之间存在唯⼀的简单道路 极⼩连通(每⼀条边都是桥) 极⼤⽆圈因此⽆向树必定不含重边和⾃环,⼀定是简单图,⼀定是平⾯图。
⽆向树中度数为1的顶点称为叶⼦,度数⼤于1的顶点称为分枝点。
平凡树:⼀阶简单图,既⽆叶⼦⼜⽆分枝点任何⾮平凡树⾄少有2个叶⼦顶点证明:设n(n≥2) 阶⽆向连通图G的边数满⾜m=n-1,设图中度数为1的顶点数为t,则2m=deg(v1)+...+dev(v n)≥t+2(n-t),得t≥2 或者设⽆向树中存在着a i个度为i的顶点,a1+2a2+...=2m,a1+a2+...=n=m+1,故叶⼦数=a3+2a4+3a5+...+2≥2森林:不含任何简单回路的图。
森林的每个连通分⽀都是树⼆、有向树和根树有向树:不考虑边的⽅向时是⼀棵⽆向树的有向图根树:只有⼀个⼊度为0的顶点,其它顶点⼊度均为1的有向树根树中出度为0的顶点称为叶⼦,出度⼤于0的顶点称为分枝点在根树中,从根到任⼀其它顶点都存在唯⼀的简单道路以v为根的根树:有向图中存在顶点v,使得从v到图中任意其它顶点都存在唯⼀简单道路,⽽且不存在从v到v的简单回路在根树中,由根到顶点v的道路长度称作v的层数(level) ;所有顶点的层数的最⼤值称为根树的⾼度(height)若T的每个分⽀点最多m个⼉⼦,则称T为m叉树;若其每个分⽀点都恰好m个⼉⼦,则称T为m叉正则树正则m叉树,其叶⼦数为t,分枝点数为i,则所有顶点出度之和为mi=所有顶点的⼊度之和t+i-1,故(m-1)i=t-1三、标号树前序遍历结果-+×421×÷632称作前缀表⽰、波兰式将波兰式压栈,当插⼊到×42时将其替换为8后序遍历结果42×1+63÷2×-称作后缀表⽰、逆波兰式将波兰式压栈,当插⼊到42×时将其替换为8中序遍历表达式4×2+1-6÷3×2称作中缀表⽰由前缀表⽰或后缀表⽰可以唯⼀构造表⽰运算式的有序树,但是由中缀表⽰则不⾏此外还有⼀些关于遍历、哈夫曼编码的知识点,数据结构中就有。