图(Graph)是由顶点的有穷非空集合和顶点之间边的集合组成,通常表示为:G(V,E),其中,G表示一个图,V是图G中顶点的集合,E是图G中边的集合
无向边(Edge),用无序偶对(Vi,Vj)来表示。
有向边,也称为弧(Arc),用有序偶<Vi,Vj>来表示,Vi称为弧尾(Tail),Vj称为弧头(Head),图形显示为ucnVi---->Vj。
在无向图中,如果任意两个顶点都存在边,则称为无向完全图,则含有n个顶点的无向完全图有n*(n-1)/2条边。在有向图中,如果任意两个顶点之间都存在方向互为相反的两条弧,则称该图为有向完全图,则含有n个顶点的有向完全图有n*(n-1)条边。
有些图的边或弧具有与它相关的数字,这种与图的边或弧相关的叫做权(weight) 这些权可以表示从一个顶点到另一个顶点的距离或耗费,这种带权的图通称为网(network)
路径的长度是路径上的边或弧的数目
第一个顶点到最后一个顶点相同的路径称为回路或坏,序列中顶点不重复出现的路径称为简单路径,除了第一个顶点和最后一个顶点之外,其余顶点不重复出现的回路,称为简单回路或简单环,
图中顶点间存在路径,两顶点存在路径则说明是连通的,如果路径最终回到起始点则称为环,当中不重复叫简单路径,若任意两点都是连通的,则图就是连通图,有向则称为强连通图,图中有子图,若子图极大连通则就是连通分量,有向的则称为强连通分量,
无向图中连通且n个顶点n-1条边叫生成树,有向图中一顶点入度为0其余顶点入度为1的叫有向树,一个有向图有若干个颗有向树构成生成森林。
图的存储结构
1、邻接矩阵(Adjacency Matrix)
邻接矩阵存储方式是用两个数组来表示图。一个一维数组存储图中顶点信息,一个二维数组(称为邻接矩阵)存储图中的边或弧的信息。
http://blog.chinaunix.net/uid-26548237-id-3483650.html