万里之行,始于足下。本博客总结暑期学习到的图论模板第三部分,以便于日后查询使用。作者水平有限,难免存在疏漏不足,恳请诸位看官斧正。倘若我的文章可以帮到你,十分荣幸。感谢19级学长lsw提供的灵感。本篇博客主要讲生成树相关问题。
更新日志:
1.于2021.9.23对Kruscal算法代码部分进行了可读性的优化。
目录
1.关于生成树的前驱知识
1.何谓“生成树”?
关于生成树我们要把“生成“和”树“分开来理解。生成即为生成子图,定义:若图G的一个子图G’包含G的所有顶点,则称G’为G的一个生成子图。当然,G’的边集是G的子集了。在图论中,树就是n个结点所能形成的最小的连通图,一共有n-1条边。而生成树就是指图G的一个为树的生成子图。
2.补充:树的一些等价定义
•无向无环的连通图
•任意两个结点之间有且仅有一条简单路径的无向图
•任何边均为桥的连通图
•没有圈,且在任意不同两点间添加一条边之后所得图含唯一的一个圈的图
3.最小生成树
在无向连通图G中我们找到一个生成树T,使得T是权值和最小的生成树,那么我们称T<