1
0
mirror of https://github.com/Didnelpsun/CS408.git synced 2026-11-04 22:34:18 +08:00
This commit is contained in:
Didnelpsun
2022-09-18 23:22:27 +08:00
parent a32294bfa3
commit 5b4df82944
2 changed files with 27 additions and 9 deletions

File diff suppressed because one or more lines are too long

View File

@@ -66,11 +66,27 @@
+ 生成子图:若有满足$V(G')=V(G)$的子图$G'$,则$G'$是$G$的生成子图。(即子图包含所有顶点,但不一定包含所有的边)
+ 连通分量:无向图$G$中的极大连通子图称为$G$的连通分量;对任何连通图而言,连通分量就是其自身。
+ 强连通分量:有向图$G$中的极大连通子图称为$G$的强连通分量;对任何强连通图而言,强连通分量就是其自身。
+ 极大连通子图:是图的连捅分量,要求连通子图包含其所有的边。
+ 极小连通子图:要保持图连通也要让边数最小的子图。
+ 生成树:包含连通图中全部顶点的一个极小连通子图。若图的顶点为$n$,则其生成树包含$n-1$条边,若去掉生成树的一条边则会变成非连通图,若加上一条边则会形成一个回路。
+ 生成森林:在非连通图中,连通分量的生成树构成了非连通图的生成森林。
对于无向图:
+ 极大连通子图:用来讨论图的连通分量,要求连通子图包含其所有的边。
+ 连通图的极大连通子图就是它本身。
+ 非连通图中有多个连通分量(不同的点相连从而连通),也就是可以有多个极大连通子图。
+ 极小连通子图:用来讨论图的生成树,要保持图连通也要让边数最小的子图。
+ 极小连通子图只在无向图中才有。
+ 极小连通子图中包含图中全部的顶点(和极大不同,极大不要求包含所有的顶点)。
+ 用边将极小连通图中的所有边都连接起
+ 极小连通子图和生成树的概念不是等价的,生成树是包含图中全部顶点的一个极小连通子图。
对于有向图:
+ 极大强连通子图:
+ 强连通图的极大强连通子图为其本身。(是唯一的)
+ 非强连通图有多个极大强连通子图。(非强连通图的极大强连通子图叫做强连通分量)
+ 不存在极小强连通子图的概念,因为树没有方向性。
无向图研究连通性,有向图研究强连通性。
#### 连通与边点关系
@@ -83,7 +99,7 @@
#### 连通概念关系
+ 有向完全图是强连通有向图。(完全就代表所有边都有双向弧,强连通代表所有边都有双向路径,条件更强)
+ 生成树是原图的无环子图、极小连通子图且点集相同。
+ 生成树是原图的无环子图、极小连通子图且点集相同。(不是连通分量)
### 图的权
@@ -134,7 +150,7 @@
设图$G$的邻接矩阵为$A$,矩阵元素为$0$或$1$,则$A^n$的元素$A^n[i][j]$表示由顶点$v_{i+1}$到顶点$v_{j+1}$的长度为$n$的路径的数目。
邻接表的表示方式是唯一的。
邻接矩阵的表示方式是唯一的。
### 邻接表
@@ -215,6 +231,8 @@
空间复杂度为$O(\vert V\vert+\vert E\vert)$。
邻接多重表表示是不唯一的。
## 图的基本操作
### 图查找
@@ -316,10 +334,10 @@
性质:
+ 邻接矩阵实现时的时间复杂度为$O(\vert V\vert^2)$,邻接表实现时的时间复杂度为$O(\vert V\vert+\vert E\vert)$;空间复杂度为$O(\vert V\vert)$。
+ 邻接表的深度优先序列会优先选择每个顶点的第一个相邻顶点,即顶点链中的第一个元素。
+ 邻接矩阵方式唯一所以深度优先序列唯一,而邻接表方式不唯一,所以深度优先序列不唯一。
+ 使用$DFS$算法递归地遍历一个无环有向图,并在退出递归时输出相应顶点,这样得到的顶点序列是逆拓扑有序。(因为栈的先进后出特性)
+ 邻接矩阵实现时的时间复杂度为$O(\vert V\vert^2)$,邻接表实现时的时间复杂度为$O(\vert V\vert+\vert E\vert)$;空间复杂度为$O(\vert V\vert)$。
相关概念: