图论小结(二)

路径

欧拉路径
性质:
不重复边,遍历所有边
条件:
无向图中,没有度数为奇数的点,或只有两个度数为奇数的点(一个起点一个终点)。
有向图中,各个点的出度与入度相等,或只有一个点出度比入度多一(起点),一个点入度比出度多一(终点)。
欧拉回路
性质:
不重复边,遍历所有边,回到起点
条件:
无向图中,没有度数为奇数的点。
有向图中,各个点出度等于入度。
哈密顿路径
不重复点,遍历所有点
NPC问题
哈密顿回路
不重复点,遍历所以点,回到起点

最小生成树

算法:
kruskal
prim
例题:
poj2349(北极的网络)kruskal模板

强连通分量
算法:

kosaraju
思路:
正反DFS
正向DFS得到逆序
据此反向DFS,每次反向DFS都是一组强连通分量
tarjan
任何一个强连通分量,必定是原图的深度优先搜索树的子树。确定每个强连通分量的子树的根,然后根据这些根从树的最低层开始,一个一个的拿出强连通分量。
gabow
例题:
poj2186(最受欢迎的奶牛)强连通分量(染色缩环)+DFS

你可能感兴趣的:(图论小结(二))