一、求所有点对间最短路径
弗洛伊德算法:
假设以加权有向图G=(V, E)为对象,则该算法不需要G的所有边均非负,只要G不包含负环即可(所有边的权值之和为负的环)。同时可判断G中是否有负环(若算法执行完后,存在某顶点到其自身最短距离为负时,则表示有负环)。
二、拓扑排序
有向无环图DAG可用于表示各种事物的顺序。而拓扑排序是指:只要存在边(u, v),则让u在线性序列中位于v之前(可用深度优先搜索和广度优先搜索)。
三、关节点
在无向连通图G中,若删除顶点u及从u出发的所有边后所得的子图不连通,则称顶点u为图G的关节点。
四、树的直径
算法步骤:
1. 任选一结点s,求到s最远的结点x。
2. 求到x最远的结点y;
3. 得到结点x和结点y的距离,即是树的直径
五、最小生成树
针对给定加权图G=(v, E) ,输出最小生成树各边的权值
Kruska's Algorithm (基于互质集合的数据结构)