图论部分概念整理

主要是看CLRS第二版的翻译附录B及第22章,话说CLRS真的很全面,描述又很严谨,虽然数学概念实在头疼。

因为最近总是把图的什么强连通分支之类的概念搞混,还是梳理一下比较好。

简单路径:有向图中一个点到另一个点的路径,路径上各顶点不重复

简单回路:同样的,有向图中一条回路v0,v1,v2,v3……vk,除v0=vk外v1……vk互不相同;无向图中,同样的,但k>=3

连通图:无向图中每对顶点都有路径相连,或者说只有一个连通分支

强连通图:有向图中每对顶点都有路径相连,或者说只有一个强连通分支

完全图:每对顶点都邻接的无向图

二分图:可以把点集划分为V1,V2,每条边(u,v)都有u属于V1,v属于V2

欧拉回路:有向强连通图中通过每条边仅一次,但可以访问一个顶点多次的一个回路

顺便把什么欧拉的什么一堆概念复习一下吧,从这里copy了一段:

定义:

欧拉通路 (欧拉迹):通过图中每条边且只通过一次,并且经过每一顶点的通路。

欧拉回路 (欧拉闭迹):通过图中每条边且只通过一次,并且经过每一顶点的回路。

欧拉图:存在欧拉回路的图。

简单说欧拉通路就是首尾不相接,而欧拉回路要求首尾相接。

无向图是否具有欧拉通路或回路的判定:

欧拉通路:图连通;图中只有2个度为奇数的节点(就是欧拉通路的2个端点)

欧拉回路:图连通;图中所有节点度均为偶数

有向图是否具有欧拉通路或回路的判定:

欧拉通路:图连通;除2个端点外其余节点入度=出度;1个端点入度比出度大1;一个端点入度比出度小1

欧拉回路:图连通;所有节点入度=出度

关于连通性判断,以前一直都是Floyed传递闭包的,网上找了一下,大概有那么几种:

最短路算法:如Floyed传递闭包,或者做一次最短路之后两点还是maxlongint

搜索:搜索到的标记一下,如果有没标记的点就是没连通的

并查集:无向图中,如果两个点没共同祖先就没连通了,或者看一共几个祖先判断连通块个数

posted on 2011-01-28 12:18  oa414  阅读(407)  评论(0编辑  收藏  举报

导航