§1

图是"点 + 连线"的极简模型,却能刻画道路网、社交关系、电路、依赖、状态转移。图论的强大之处在于:把纷杂的实际问题抽象成顶点与边之后,通性通法立刻可用。本章建立图的基本语言——度、通路、连通、子图,然后走进两个经典判定:欧拉图(一笔画)与哈密顿图,最后引出结构最简的连通图:树。

一、图的定义与类型

定义(无向图). 图 $G=(V,E)$ 由非空顶点集 $V$ 与边集 $E$ 组成,每条边是一个无序顶点对 $\{u,v\}$。若边为有序对 $(u,v)$,称 $G$ 为有向图。

  • 简单图:无自环(连接自身的边)、无重边。本章除注明外均指简单图。
  • 完全图 $K_{n}$:任意两顶点间都有边,边数 $\dbinom{n}{2}=\dfrac{n(n-1)}{2}$。
  • 二分图:$V$ 可分为两个不交子集 $X,Y$,每条边一端在 $X$ 一端在 $Y$。
  • 子图:$H=(V',E')$ 满足 $V'\subseteq V,\ E'\subseteq E$ 且 $E'$ 的端点都在 $V'$ 中。

常用存储结构:邻接矩阵($n\times n$,稠密图友好)与邻接表(稀疏图友好)。例如三角形 $K_{3}$ 的邻接矩阵为

$$A=\begin{bmatrix}0&1&1\\1&0&1\\1&1&0\end{bmatrix}.$$

二、度与握手定理

顶点 $v$ 的度 $\deg(v)$ 是与之关联的边数(有向图区分入度 $\deg^{-}$ 与出度 $\deg^{+}$)。

定理(握手定理). 对任意无向图,

$$\sum_{v\in V}\deg(v)=2\lvert E\rvert.$$

证明:每条边有两个端点,在求和时被它的两个端点各贡献一次。

推论. 奇度顶点的个数必为偶数。因为总和为偶数,偶度顶点之和为偶,剩下奇度顶点之和也必为偶,而奇数之和为偶要求项数为偶。

在有向图中 $\sum\deg^{+}(v)=\sum\deg^{-}(v)=\lvert E\rvert$。

三、通路、回路与连通性

  • 通路(walk):顶点与边交替的序列 $v_{0}e_{1}v_{1}\cdots e_{k}v_{k}$,$k$ 为长度。
  • 迹(trail):边不重复的通路;路径(path):顶点不重复的通路。
  • 回路(circuit):起点与终点相同的迹;圈(cycle):除首尾外顶点不重复的回路。

若任意两顶点间存在通路,称图连通;否则分解为若干连通分支。有向图中区分强连通(任意有序对互相可达)与弱连通(忽略方向后连通)。

两种基础遍历:深度优先搜索(DFS) 用栈沿一条路走到底再回溯,广度优先搜索(BFS) 用队列逐层扩展。两者都在 $O(\lvert V\rvert+\lvert E\rvert)$ 时间内访问一个连通分支的所有顶点;BFS 还能给出无权图的最短路层数。

四、欧拉图(一笔画)

定义. 经过图中每条边恰好一次的迹称为欧拉迹;若还回到起点则称欧拉回路,含欧拉回路的图称欧拉图。

定理(欧拉,1736). 设 $G$ 连通(忽略孤立点),则

  • $G$ 有欧拉回路 $\iff$ 每个顶点的度都是偶数;
  • $G$ 有欧拉迹但无欧拉回路 $\iff$ 恰有 $2$ 个奇度顶点(此时迹必从一个奇度点出发、在另一个奇度点结束)。

必要性直观:每次"进入"一个顶点必须再"离开",边成对使用,故中间顶点度为偶;起点与终点若不同,各多出一条未配对的边,度为奇。

这就是"一笔画"的完整判据,也是欧拉解决哥尼斯堡七桥问题的答案:该图四个顶点度分别为 $5,3,3,3$,奇度点有 $4$ 个,超过 $2$,故不可一笔画。

五、哈密顿图

定义. 经过每个顶点恰好一次的路径称哈密顿路径;若首尾相接成圈则称哈密顿圈,含哈密顿圈的图称哈密顿图。

欧拉关心边、哈密顿关心点,但难度天差地别:欧拉图有充要条件且可在线性时间判定,哈密顿图至今没有实用的充要条件,判定问题是 NP 完全的。只有充分条件可用:

狄拉克定理. 若简单图有 $n\ge3$ 个顶点且每个顶点度 $\ge n/2$,则 $G$ 是哈密顿图。

概念遍历对象判定难度充要条件
欧拉回路每条边一次线性时间连通且全为偶度
哈密顿圈每个顶点一次NP 完全未知,仅有充分条件

六、树与生成树

定义. 连通且无圈的图称为树,常记 $T$。度为 $1$ 的顶点称叶子。

定理. $n$ 个顶点的树恰有 $n-1$ 条边。

证明(对 $n$ 归纳). $n=1$ 时树只有一个孤立点,边数 $0=1-1$,成立。设结论对不超过 $k$ 个顶点的树成立,考虑有 $k+1$ 个顶点的树 $T$。因 $T$ 连通无圈,必存在叶子(否则每点度 $\ge2$,沿边不断前行必回到已访问顶点而成圈)。删去一片叶子 $v$ 及其唯一关联边,剩下的图仍连通无圈,是有 $k$ 个顶点的树,由归纳假设有 $k-1$ 条边。加回 $v$ 与那条边,得 $T$ 的边数为 $k=(k+1)-1$。证毕。

等价刻画. 对 $n$ 个顶点的图,下列命题两两等价:连通无圈;连通且恰有 $n-1$ 条边;无圈且恰有 $n-1$ 条边;任意两顶点间有唯一路径。

生成树. 连通图 $G$ 的生成树是包含 $G$ 全部顶点的树型子图。DFS 与 BFS 在遍历过程中自然产出生成树;带权图上求总权最小的生成树即下一章的最小生成树问题。

七、例题与解答

例题1(判断欧拉图)

图 $G$ 的顶点集 $V=\{A,B,C,D,E\}$,边集为

$$E=\{AB,\ AC,\ BC,\ BD,\ CD,\ DE,\ CE\}.$$

判断 $G$ 是否为欧拉图,是否存在欧拉迹。

解: 先算各顶点度:

顶点关联边度
$A$$AB,AC$$2$
$B$$AB,BC,BD$$3$
$C$$AC,BC,CD,CE$$4$
$D$$BD,CD,DE$$3$
$E$$DE,CE$$2$

度数之和 $2+3+4+3+2=14=2\times7$,与握手定理 $2\lvert E\rvert$ 吻合($\lvert E\rvert=7$)。✓

奇度顶点为 $B$ 与 $D$,恰好 $2$ 个,且图连通。由欧拉定理:不存在欧拉回路,但存在欧拉迹,且必以 $B$ 与 $D$ 为两端。给出一条:

$$B\to A\to C\to B\to D\to C\to E\to D,$$

依次用边 $AB,AC,BC,BD,CD,CE,DE$,共 $7$ 条边且互不重复。✓

例题2(树的边数)

某连通图有 $10$ 个顶点、$15$ 条边,问它的生成树有多少条边?至少要删去多少条边才能使其无圈?

解: 生成树含全部 $10$ 个顶点,由定理其边数为 $10-1=9$ 条。原图 $15$ 条边中须删去 $15-9=6$ 条。这个差值 $\lvert E\rvert-\lvert V\rvert+1=6$ 称为图的圈秩,表示独立圈的个数。✓

练习

1. 一个图有 $6$ 个顶点、各顶点度为 $3,3,3,3,2,2$,问它有多少条边?又能否存在度序列为 $1,2,3,4,5$ 的简单图?

2. 判断完全图 $K_{4}$ 与 $K_{5}$ 是否为欧拉图。

3. 证明树中任意两顶点间的路径唯一,并说明 $n$ 个顶点的连通图至少有多少条边。

参考答案.

1. 度数之和 $=3+3+3+3+2+2=16$,由握手定理 $\lvert E\rvert=16/2=8$ 条。度序列 $1,2,3,4,5$ 不存在:奇度顶点为 $1,3,5$ 共 $3$ 个,是奇数个,违反"奇度顶点个数必为偶数"的推论。

2. $K_{4}$ 每点度 $3$(奇),有 $4$ 个奇度点,非欧拉图且无欧拉迹;$K_{5}$ 每点度 $4$(偶)且连通,是欧拉图。

3. 若两顶点间有两条不同路径,把它们拼接(去掉公共部分)即得一个圈,与树无圈矛盾。连通图至少 $n-1$ 条边,此时恰为树;少于 $n-1$ 条必不连通。

本章小结

  • 图由顶点与边构成,分无向 / 有向、简单 / 多重,可用邻接矩阵或邻接表存储。
  • 握手定理 $\sum\deg(v)=2\lvert E\rvert$,推论是奇度顶点个数为偶。
  • 通路、迹、路径、回路、圈层层加强限制;连通性由 DFS / BFS 在线性时间判定。
  • 欧拉图判据极简:连通且全偶度有欧拉回路,恰两个奇度点有欧拉迹。
  • 哈密顿问题只关心顶点却是 NP 完全,仅有狄拉克等充分条件。
  • 树是连通无圈图,$n$ 个顶点恰 $n-1$ 条边,任意两点路径唯一;生成树是遍历的副产品。

本章互动演示见页面底部交互图(DFS 与 BFS 遍历动画 graphTraversal)。

互动演示

拖动下方控件观察动态过程。