【梳理】离散数学 第16章 树 16.1 无向树及其性质 16.2 生成树 16.3 根树及其应用

本文主要是介绍【梳理】离散数学 第16章 树 16.1 无向树及其性质 16.2 生成树 16.3 根树及其应用,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

教材:《离散数学》第2版 屈婉玲 耿素云 张立昂 高等教育出版社
源文档高清截图在最后

第16章 树

16.1 无向树及其性质

1、连通而无回路的无向图叫做无向树,简称树。每个连通分量都是树的无向图称作森林。平凡图也成平凡树。在无向树中,悬挂顶点(度数为1的顶点)称树叶,度数大于等于2的顶点称作分支点。

2、树的充分必要条件:
设G(V, E)是n阶m条边的无向图,则下列命题等价:
【1】G是树。
【2】G中任意两个顶点之间存在唯一的路径。
【3】G无回路,且m = n – 1。
【4】G是连通的,且m = n – 1。
【5】G是连通的,且任何边均为桥。
【6】G中没有回路,但任何两个不同的顶点之间添加新的边后能产生唯一一个含新边的圈。
证明 【1】推【2】:由G的连通性以及“n阶图G中,如存在v到自身的回路,则一定存在v到自身的长度小于等于n的初级回路”可知,对任意的u,v∈V,u到v存在一条路径。若路径不是唯一的,设Γ1和Γ2都是u到v的路径,则Γ1和Γ2上的边就可以构成回路。这与树的定义矛盾。
【2】推【3】。首先证明G中无回路。若G存在关联某顶点v的环,则v到v存在长度为0和1的两条路径(初级回路是路径的特殊情况;顶点到自身都具有长度为0的一条路径),与已知矛盾。若G存在长度≥2的圈,则圈上任何两个顶点之间都存在两条不同的路径,也引起矛盾。
然后归纳证明m = n – 1。当n = 1时G为平凡图,结论成立。设n≤k时结论都成立,那么n = k + 1时结论也要成立。此时,设e = (u, v)为G的一条边,由于G无回路,所以u到v只有唯一的路径(否则任意两条路径均可形成回路),所以G – e为两个连通分量G1、G2。设ni,mi分别为Gi中的顶点数和边数,则显然ni≤k。由归纳假设,mi = ni – 1,i = 1,2。于是m = m1 + m2 + 1 = n1 + n2 – 2 + 1 = n – 1。得证。
【3】推【4】。只要证明G是连通的(注意:一个图是树,是该图连通且无回路的必要条件,现在证前者是后者的充分条件)。假设G不连通,则设G由s个连通分量G1,G2,……,Gs(s≥2)。又每个Gi均无回路,因此Gi都是树。由前面的证明,mi = ni – 1,于是在这里插入图片描述 。但s≥2,这与m = n – 1矛盾。
【4】推【5】。只要证G中每条边均为桥。对任意的e∈E,均有 |E(G – e)| = n – 1 – 1 = n – 2。由第14章习题50,G – e不是连通图,故e为桥。
【5】推【6】。由于G的每条边均为桥,因此G中无圈。(在圈中删掉任意一条边都不影响圈上任意两点的连通性)又由于G连通,所以G为树。所以G中任意两个不同顶点u,v之间存在唯一的路径Γ。设e是在u,v之间添加的新边,则Γ∪e是一个圈,且显然是唯一的。
【6】推【1】。根据树的定义,只要证明G是连通的。对任意两个不同顶点u和v,在u,v之间添加一条新边e,产生唯一的一个含e的圈C。显然C – e为G中u到v的通路,故u ~ v。而u,v是任意选定的,所以G是连通的。

3、设T是

这篇关于【梳理】离散数学 第16章 树 16.1 无向树及其性质 16.2 生成树 16.3 根树及其应用的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/359726

相关文章

Python结合PyWebView库打造跨平台桌面应用

《Python结合PyWebView库打造跨平台桌面应用》随着Web技术的发展,将HTML/CSS/JavaScript与Python结合构建桌面应用成为可能,本文将系统讲解如何使用PyWebView... 目录一、技术原理与优势分析1.1 架构原理1.2 核心优势二、开发环境搭建2.1 安装依赖2.2 验

Java字符串操作技巧之语法、示例与应用场景分析

《Java字符串操作技巧之语法、示例与应用场景分析》在Java算法题和日常开发中,字符串处理是必备的核心技能,本文全面梳理Java中字符串的常用操作语法,结合代码示例、应用场景和避坑指南,可快速掌握字... 目录引言1. 基础操作1.1 创建字符串1.2 获取长度1.3 访问字符2. 字符串处理2.1 子字

IDEA自动生成注释模板的配置教程

《IDEA自动生成注释模板的配置教程》本文介绍了如何在IntelliJIDEA中配置类和方法的注释模板,包括自动生成项目名称、包名、日期和时间等内容,以及如何定制参数和返回值的注释格式,需要的朋友可以... 目录项目场景配置方法类注释模板定义类开头的注释步骤类注释效果方法注释模板定义方法开头的注释步骤方法注

Python如何自动生成环境依赖包requirements

《Python如何自动生成环境依赖包requirements》:本文主要介绍Python如何自动生成环境依赖包requirements问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑... 目录生成当前 python 环境 安装的所有依赖包1、命令2、常见问题只生成当前 项目 的所有依赖包1、

SpringShell命令行之交互式Shell应用开发方式

《SpringShell命令行之交互式Shell应用开发方式》本文将深入探讨SpringShell的核心特性、实现方式及应用场景,帮助开发者掌握这一强大工具,具有很好的参考价值,希望对大家有所帮助,如... 目录引言一、Spring Shell概述二、创建命令类三、命令参数处理四、命令分组与帮助系统五、自定

SpringBoot应用中出现的Full GC问题的场景与解决

《SpringBoot应用中出现的FullGC问题的场景与解决》这篇文章主要为大家详细介绍了SpringBoot应用中出现的FullGC问题的场景与解决方法,文中的示例代码讲解详细,感兴趣的小伙伴可... 目录Full GC的原理与触发条件原理触发条件对Spring Boot应用的影响示例代码优化建议结论F

MySQL 分区与分库分表策略应用小结

《MySQL分区与分库分表策略应用小结》在大数据量、复杂查询和高并发的应用场景下,单一数据库往往难以满足性能和扩展性的要求,本文将详细介绍这两种策略的基本概念、实现方法及优缺点,并通过实际案例展示如... 目录mysql 分区与分库分表策略1. 数据库水平拆分的背景2. MySQL 分区策略2.1 分区概念

Spring Shell 命令行实现交互式Shell应用开发

《SpringShell命令行实现交互式Shell应用开发》本文主要介绍了SpringShell命令行实现交互式Shell应用开发,能够帮助开发者快速构建功能丰富的命令行应用程序,具有一定的参考价... 目录引言一、Spring Shell概述二、创建命令类三、命令参数处理四、命令分组与帮助系统五、自定义S

MySQL中动态生成SQL语句去掉所有字段的空格的操作方法

《MySQL中动态生成SQL语句去掉所有字段的空格的操作方法》在数据库管理过程中,我们常常会遇到需要对表中字段进行清洗和整理的情况,本文将详细介绍如何在MySQL中动态生成SQL语句来去掉所有字段的空... 目录在mysql中动态生成SQL语句去掉所有字段的空格准备工作原理分析动态生成SQL语句在MySQL

C语言函数递归实际应用举例详解

《C语言函数递归实际应用举例详解》程序调用自身的编程技巧称为递归,递归做为一种算法在程序设计语言中广泛应用,:本文主要介绍C语言函数递归实际应用举例的相关资料,文中通过代码介绍的非常详细,需要的朋... 目录前言一、递归的概念与思想二、递归的限制条件 三、递归的实际应用举例(一)求 n 的阶乘(二)顺序打印