图的定义
图(Graph)——图G是由两个集合V(G)和E(G)组成的,记为G=(V,E)其中:V(G)是顶点的非空有限集,E(G)是边的有限集合,边是顶点的无序对或有序对。
这个相关的概念我们是比较难去理解的
所以我们接着去往后看
有向图和无向图的两种相关的概念
有向图——有向图G是由两个集合V(G)和E(G)组成
其中:V(G)是顶点的非空有限集,E(G)是有向边(也称弧)的有限集合,弧是顶点的有序对,记为v,w是顶点,v为弧尾,w为弧头
无向图就是
无向图——无向图G是由两个集合V(G)和E(G)组成 其中:V(G)是顶点的非空有限集,E(G)是边的有限集合,边是顶点的无序对,记为(v,w)或(w,v),并且(v,w)=(w,v)。
还有有向完全图和无向完全图
有向完全图——n个顶点的有向图最大边数是n(n-1) 无向完全图——n个顶点的无向图最大边数是n(n-1)/2
这里是一些相关的规律
基本术语概念
权——与图的边或弧相关的数
网——带权的图
顶点的度
无向图中,顶点的度为与每个顶点相连的边数; 有向图中,顶点的度分成入度与出度; 入度:以该顶点为头的弧的数目; 出度:以该顶点为尾的弧的数目; 路径——路径是顶点的序列V={Vi0,Vi1,……Vin},满足(Vij-1,Vij)∈E 或 < Vij-1,Vij>∈E,(1<j≦n)
路径长度——沿路径边的数目或沿路径各边权值之和
回路——第一个顶点和最后一个顶点相同的路径
简单路径——序列中顶点不重复出现的路径
简单回路——除了第一个顶点和最后一个顶点外,其余顶点不重复出现的回路
连通——从顶点V到顶点W有一条路径,则说V和W是连通的
连通图——图中任意两个顶点都是连通部分
连通分量——非连通图的每一个连通部分
强连通图——有向图中,如果对每一对 Vi,Vj 从 Vi 到 Vj 和从 Vj 到 Vi 都存在路径。
这些概念都是比较难理解的
所以我们可以在之后的学习中慢慢去思考这里面相关的概念
常用图的存储结构
邻接矩阵法
邻接矩阵法——表示顶点间相联关系的矩阵
特点:
无向图的邻接矩阵对称,可压缩存储;有n个顶点的无向图需存储空间为n(n+1)/2; 有向图邻接矩阵不一定对称;有n个顶点的有向图需存储空间为n²; 无向图中顶点Vi的度TD(Vi)是邻接矩阵A中第i行元素之和; 有向图中, 顶点Vi的出度是A中第i行元素之和; 顶点Vi的入度是A中第i列元素之和;
邻接表法
实现:为图中每个顶点建立一个单链表,第i个单链表中的结点表示依附于顶点Vi的边(有向图中指以Vi为尾的弧)