一、 图论
图论 (Graph theory) 是数学的一个分支,图是图论的主要研究对象。
图 (Graph) 是由若干给定的顶点及连接两顶点的边所构成的图形,这种图形通常用来描述某些事物之间的某种特定关系。
顶点用于代表事物,连接两顶点的边则用于表示两个事物间具有这种关系。图的类型
二、 常用类型
- 有向图
- 无向图
- 有环图
- 赋权图(如果这些权都是正实数,就称为正权图)
其他类型 - 混合图(即有向又无向)
- 多重图(有平行边,两节点之间有两条边)
- 线图(无平行边)
- 简单图(线图并且是无环图)
- 多重图(有自环或重边)
- 完全图(任意两节点都有边)
- 平凡图(仅有一个结点的图)
- 子图(去掉部分顶点或边)
- 补图
- 反图(有向图每条边反向)
- 零图(边为空集)
- 环图
- 星图
- 轮图(星图+环图)
- 链图
- 正则图
若对一张无向图 ,每个顶点的度数都是一个固定的常数,则称之为正则图(Regular Graph)。
三、 简单图
自环:e = (u, v), u=v
重边:若E中存在两个完全相同的元素(边)e1、e2,则它们被称作(一组)重边。
简单图 (Simple graph):若一个图中没有自环和重边,它被称为简单图。具有至少两个顶点的简单无向图中一定存在度相同的结点。
四、 路径
途径(Walk):途径是一个将若干个点连接起来的边的集合。
迹(Trail):对于一条途径,若两两互不相同,则称是一条迹。
路径 (Path)(又称简单路径 (Simple path)):对于一条迹,若其连接的点的序列中点两两不同,则称为一条路径。
回路 (Circuit):对于一个迹 ,若起点就是终点,则称为一个回路。
环/圈 (Cycle)(又称简单回路/简单环 (Simple circuit)):对于一个回路 ,若起点和终点是点序列中唯一重复出现的点对,则称为一个环。
五、 子图
子图:对一张图G=(V,E),若存在另一张图H=(V`,E`)满足V`含于V且E`含于E,则称H是 G的子图 (Subgraph)。
导出子图:若对H含于G,满足所有的u,v含于V`,只要(u,v)含于E,均有(u,v)含于E`,则称H是G的导出子图/诱导子图 (Induced subgraph)。
生成子图:若H含于G满足V`含于V,则称为H为G的生成子图/支撑子图 (Spanning subgraph)。
例:在图1-13中,G1是G的生成子图,G2是G的导出子图,G3是G的主子图。
k-因子:如果一张无向图G的某个生成子图F为k-正则图,则称F为G的一个k-因子 (k-Factor)。
闭合子图:对于所有边(u,v),点u在子图中则v必在子图中,则称子图H为G的一个闭合子图 (Closed subgraph)。
六、 连通
无向图
有向图
七、 图的表示
- 图的定义:G=<V, E>
- 节点集合(非空集Vertex/ Node):V = {v1,v2,…,vn}
- 边的集合(Edge):E = {e1,e2,…,em}
- 边/弧的定义:e = (u, v)(u->v, 起点指向终点)
- 起点(tail):u
- 终点(head/endpoint):v
- 代码表示:邻接矩阵,邻接表
八、 相关概念
- 阶:点的个数
- 前驱后继
前驱:e = (u, v),u是v的前驱
后继:e = (u, v),v是u的后继 - 相邻:两个点之间有边,则为点相邻
- 关联:点是边的一个端点,则为点边关联/相邻
- 邻域:对于顶点v,所有与之相邻的顶点所构成的集合成为N(v), v的邻域
- 度:一个顶点几条边,就有几度
出度:有向图中,背离节点边的数量
入度:有向图中,指向节点边的数量
有向图中,出度等于入度
握手定理(又称图论基本定理):度数的总和是边数的两倍。
推论:在任意图中,度数为奇数的点必然有偶数个。 - 度的案例
0度:孤立点
1度:叶节点、悬挂点
2|d(v):偶点
2!|d(v)度:奇点
d(v) = |V|-1:支配点(树根)
对一张图,所有节点的度数的最小值称为最小度 (Minimum degree);最大值称为最大度 (Maximum degree) - 连通性:在图G中,两个不同的结点u和结点v之间若存在一条路,则称结点u和结点v是连通的。
- 通路:两点之间可以相连的路
- 可达性:无向图中的连通也可以视作双向可达。
- 最短通路:两点之间最短通路
- 回路:有环
- 同构:相同结构,边点相同
九、 其他
无能为力