图 (数学)

在离散数学中，图（英語：graph）是用于表示物体与物体之间存在某种关系的结构。数学抽象后的“物体”称作节点或顶点（vertex, node, point），节点间的相关关系则称作边。在描绘一张图的时候，通常用一组点或小圆圈表示节点，其间的边则使用直线或曲线。 图中的边可以是有方向或没有方向的。例如在一张图中，如果节点表示聚会上的人，而边表示两人曾经握手，则该图就是没有方向的，因为甲和乙握过手也意味着乙一定和甲握过手。相反，如果一条从甲到乙的边表示甲欠乙的钱，则该图就是有方向的，因为“曾经欠钱”这个关系不一定是双向的。前一种图称为无向图，后一种称为有向图。 图是图论中的基本概念。1878年，詹姆斯·西尔维斯特首次使用“图”这一名词：他用图来表示数学和化学分子结构之间的关系（他称为“化学图”，英語：chemico-graphical image）。 在图论中，图的定义有很多。下面是一些比较基本的定义方式以及与它们相关的数学结构。 一张图（为了和有向图区分，也称无向图；为了和多重图区分，也称简单图）是一个二元组G = (V, E)，其中集合V中的元素称为节点，集合E中的元素是两个节点组成的无序对，称为边。集合V称为点集，E称为边集。 一条边 { x , y } {\displaystyle \{x,y\}} 上的两个节点x和y称作这条边的顶点或端点；也说这条边连接了节点x和y，或这条边与x和y关联（英語：incident）。一个节点可以不属于任何边，即它不与任何节点相连。由于 { x , y } {\displaystyle \{x,y\}} 是无序对， { x , y } {\displaystyle \{x,y\}} 和 { y , x } {\displaystyle \{y,x\}} 表示的是同一个元素。 更一般地，多重图的定义中允许同一对节点之间存在多条不同的边。在特定语境中，多重图也可以直接称作图。此时，在上面的定义中，集合E应该为多重集。 有时，图的定义中允许自环（简称环，英語：loop），即一条连接一个节点和其自身的边。允许自环的图也称为自环图。 点集V一般是有限集；这意味着边集E也是有限集（不考虑多重图）。相对地，无限图（英语：infinite graph）中的点集可以是无限的。然而，由于有限图中的结论大多不能延伸到无穷图，无穷图通常更被视为一种特殊的二元关系。 一个点集为空集的图称为空图（因此边集也是空集）。图的阶（英語：order）是指其中节点的数量，即|V|。图的边数是指其边的数量，即|E|。图的大小（size）一般也指图的边数。但在一些语境中，例如描述算法复杂度的时候，图的大小是指|V|+|E|（否则非空图的大小也有可能是0）。节点的度（英語：degree或valency）是指连接到该节点的边的数量；对于允许自环的图，环要算做两条边（因为两端都连接到这个节点）。 如果一个图的阶是n，则其节点的度最大可能取n-1（对于允许自环的图则是n），而边最多可能有n(n − 1)/2条(对于允许自环的图则是n(n + 1)/2）。 在图的定义中，边的概念定义了节点上的一个对称关系，即“邻接”关系（英語：adjacency relation）。具体地说，对于两个节点x和y，如果 { x , y } {\displaystyle \{x,y\}} 是一条边，则称它们是邻接的。一张图因此可以用其邻接矩阵A来表示，即一个 n × n {\displaystyle n\times n} 的矩阵，其中每个元素Aij表示节点i和j之间的边的数量。对于一个简单图，总有 A i j ∈ { 0 , 1 } {\displaystyle A_{ij}\in \{0,1\}} ，分别表示“不相连”和“相连”，而 A i i = 0 {\displaystyle A_{ii}=0} （即一条边的两个顶点不能相同）。允许自环的图上 A i i {\displaystyle A_{ii}} 的取值可以是非负整数，而多重图则允许任何 A i j {\displaystyle A_{ij}} 的取值都是非负整数。无向图的邻接矩阵是对称阵（ A i j = A j i {\displaystyle A_{ij}=A_{ji}} ）。 边为有方向的图称作有向图（英語：directed graph或digraph）。 有向图的一种比较严格的定义是这样的：一个二元组 G = ( V , E ) {\displaystyle G=(V,E)} ，其中 V {\displaystyle V} 是节点的集合； E ⊆ { ( x , y ) ∣ ( x , y ) ∈ V 2 ∧ x ≠ y } {\displaystyle E\subseteq \{(x,y)\mid (x,y)\in V^{2}\wedge x\neq y\}} 是边（也称为有向边，英語：directed edge或directed link；或弧，英語：arcs）的集合，其中的元素是节点的有序对。 为了和多重图区分，这样的有向图也称为有向简单图。 在从 x {\displaystyle x} 到 y {\displaystyle y} 的边 ( x , y ) {\displaystyle (x,y)} 上，节点 x {\displaystyle x} 和 y {\displaystyle y} 称作这条边的顶点，其中 x {\displaystyle x} 是起点或尾（英語：tail）， y {\displaystyle y} 是终点或头。也说这条边连接了节点 x {\displaystyle x} 和 y {\displaystyle y} 、这条边与节点 x {\displaystyle x} 和 y {\displaystyle y} 关联。一张有向图中的节点可以不属于任何一条边。边 ( y , x ) {\displaystyle (y,x)} 称为边 ( x , y ) {\displaystyle (x,y)} 的反向边。 节点的出度（英語：out-degree）是指起点为该节点的边的数量；节点的入度（英語：in-degree）是指终点为该节点的边的数量。 更一般地，如果一张有向图允许多条头尾都分别相同的边，则称这样的图为有向多重图，这样的边称为多重边。一种允许多重边的有向图定义方法如下：一个有向图是这样的三元组 G = ( V , E , ϕ ) {\displaystyle G=(V,E,\phi )} ： V {\displaystyle V} 是节点的集合； E {\displaystyle E} 是边的集合； ϕ : E → { ( x , y ) ∣ ( x , y ) ∈ V 2 ∧ x ≠ y } {\displaystyle \phi :E\to \{(x,y)\mid (x,y)\in V^{2}\wedge x\neq y\}} 是一个关联函数，将每条边映射到一个由顶点组成的有序对上（即一条边被按顺序关联到两个顶点）。 自环是指一条起点和终点相同的边。前面的两个定义都不允许自环，因为若节点 x {\displaystyle x} 上有一个自环，则边 ( x , x ) {\displaystyle (x,x)} 存在；但这样的边不在 { ( x , y ) ∣ ( x , y ) ∈ V 2 ∧ x ≠ y } {\displaystyle \{(x,y)\mid (x,y)\in V^{2}\wedge x\neq y\}} 中。因此，如果要允许自环，则上面的定义要做修改：对于有向简单图， E {\displaystyle E} 的定义应该修改为 E ⊆ { ( x , y ) ∣ ( x , y ) ∈ V 2 } {\displaystyle E\subseteq \{(x,y)\mid (x,y)\in V^{2}\}} ；对于有向多重图， ϕ {\displaystyle \phi } 的定义应该修改为 ϕ : E → { ( x , y ) ∣ ( x , y ) ∈ V 2 } {\displaystyle \phi :E\to \{(x,y)\mid (x,y)\in V^{2}\}} 。为了避免定义不清，这样的图分别称作允许自环的有向简单图或允许自环的有向多重图（英語：quiver（英语：Quiver (mathematics)））。 在允许自环的有向简单图 G {\displaystyle G} 中，边是 V {\displaystyle V} 上的一个齐次关系（英语：Binary relation#Homogeneous relation） ∼ {\displaystyle \sim } ，称作 G {\displaystyle G} 上的邻接关系。 对于顶点是 x {\displaystyle x} 和 y {\displaystyle y} 的边 ( x , y ) {\displaystyle (x,y)} ，我们说 x {\displaystyle x} 和 y {\displaystyle y} 是彼此邻接的，记作 x ∼ y {\displaystyle x\sim y} 。 边既可以有向、也可以无向的图称作混合图。混合简单图是一个多元组G = (V, E, A)，而混合多重图则是多元组G = (V, E, A, ϕE, ϕA)，其中V、E（无向边集）、A（有向边集）、ϕE、ϕA的定义可以参考前面的无向图和有向图定义。在此定义下，有向图和无向图是混合图的特殊情况。 赋权图（英語：weighted graph，也称加权图、网络（英語：network））是指每条边都对应有一个数字（即“权重”，weight）的图。根据具体问题，权重可以表示诸如费用、长度或容量等意义。这样的图会出现在最短路径问题和旅行商问题等问题中。 子图（subgraph）：对于圖 G {\displaystyle G} 和图 G ′ {\displaystyle G'} ，若 V ( G ′ ) ⊆ V ( G ) {\displaystyle V(G')\subseteq V(G)} 且 E ( G ′ ) ⊆ E ( G ) {\displaystyle E(G')\subseteq E(G)} ，则称 G ′ {\displaystyle G'} 是 G {\displaystyle G} 的子图。 生成子图（spanning subgraph）：指满足条件 V ( G ′ ) = V ( G ) {\displaystyle V(G')=V(G)} 的 G {\displaystyle G} 的子图 G ′ {\displaystyle G'} 。 链(chain或walk)、轨迹(trail)、路径(path)：链是顶点 v i {\displaystyle v_{i}} 和边 e i {\displaystyle e_{i}} 交替出现的序列 W = v i 0 e i 0 v i 1 . . . e i k v i k {\displaystyle W=v_{i_{0}}e_{i_{0}}v_{i_{1}}...e_{i_{k}}v_{i_{k}}} 称作一个长度为k的链，其中 v i 0 {\displaystyle v_{i_{0}}} 和 v i k {\displaystyle v_{i_{k}}} 为其端点，其余顶点为内部点。所有边都不相同的链称为轨迹（简称迹）。所有顶点都不相同的轨迹称为路径（简称路）。在有向图中，若链（迹、路）的方向和其中每条边的方向一致，则称其为有向链（迹、路）。 两端点相同的链和迹分别称为闭链（或环，cycle）、闭迹（或回路，circuit）。 距離（Distance）： 从頂點 u {\displaystyle u} 出發到頂點 v {\displaystyle v} 的最短路徑若存在，則此路徑的長度稱作從 u {\displaystyle u} 到 v {\displaystyle v} 的距離。 正则图是指每个节点的邻居（英語：neighbor）数量都相同的图，即每个节点的度都相同的图。节点的度为k的正则图也称作k-正则图。 完全图（英語：complete graph）是指每对节点之间都有一条边相连的图。一张完全图包含简单图所有可能出现的边。 有限图（英語：finite graph）是指点集和边集是有限集的图。否则，则称为无限图。在不加说明的情况下，图论中讨论的图大多是有限图。 在无向图中，如果存在x和y之间的路径，则称此两节点的无序对 { x , y } {\displaystyle \{x,y\}} 是连通的；否则，则称此两点是非联通的。 连通图是指每对节点都连通的无向图。否则，则称图是非连通图。 在有向图中，如果存在x和y之间的有向路径，则称此两节点的有序对 { x , y } {\displaystyle \{x,y\}} 是强连通的。此外，若将图中的所有边都换为无向边，得到的无向图中存在x和y之间的路径，则称此两节点是弱连通的。否则，则称此两点是非联通的。 强连通图是指每对节点都强连通的有向图。此外，弱连通图是指每对节点都弱联通的有向图。否则，则称图是非连通图。 对于一张图，若不存在大小为k − 1的点集或边集，使得从图中移除该集合后，图就变为非连通图，则称该图是k-点连通图（英语：k-vertex-connected graph）或k-边连通图（英语：k-edge-connected graph）。k-点连通图通常也简称k-连通图。 二分图（英語：bipartite graph）是指这样的简单图：其点集可以被划分称两个集合W和X，其中W中的任意两个节点之间没有边相连，X中的任意两个节点之间也没有边相连。二分图是点着色色数为2的图。 若一张图的点集是两个集合W和X的无交并，使得W中的任意节点都和X中的所有节点邻接，且W或X之内没有边，则称此图是完全二分图。 平面图是指可以将其节点和边画在平面上，而没有两边相交的图。 阶为n≥3的循环图（英語：cycle graph）或环形图（英語：circular graph）是指其节点可以列为v1, v2, …, vn，使得图中的边为 { v i , v i + 1 } {\displaystyle \{v_{i},v_{i+1}\}} ，其中i=1, 2, …, n − 1，以及 { v n , v 1 } {\displaystyle \{v_{n},v_{1}\}} 。循环图的另一种定义是所有点的度都为2的连通图。如果循环图是另一个图的子图，则它是那个图中的一个环。 树是指任意两点之间都有且仅有一条路径的无向图。等价地，树是一个连通无环无向图。 森林是指任意两点之间至多仅有一条路径的无向图。等价地，森林是一个无环无向图，或一组树的无交并。 一些进阶的特殊图包括： 佩特森圖； 完美图（英语：perfect graph）； 弦图； 强正则图（英语：strongly regular graph）。 右边的图示是一个点集为 V = { 1 , 2 , 3 , 4 , 5 , 6 } {\displaystyle V=\{1,2,3,4,5,6\}} 、边集为 E = { { 1 , 2 } , { 1 , 5 } , { 2 , 3 } , { 2 , 5 } , { 3 , 4 } , { 4 , 5 } , { 4 , 6 } } {\displaystyle E=\{\{1,2\},\{1,5\},\{2,3\},\{2,5\},\{3,4\},\{4,5\},\{4,6\}\}} 的图。 在计算机科学中，有向图可以用于表示概念图、有限状态自动机，以及其它许多数据结构。 任意集合X上的二元关系R都可定义一个有向图。X中的元素x到y有一条边，当且仅当xRy。 有向图可以用于表示信息网络。例如，在推特上，用户之间的关注关系可以用有向图表示。 图上可以进行一些运算或变换，使一个图变为另一个图： 一元运算，将一个图变换为另一个图，例如： 边收缩， 线图， 对偶图， 补图； 二元运算，结合两个图为一个新图，例如： 图的无交并（英语：disjoint union of graphs）， 图乘积，包括图的笛卡尔乘积（英语：cartesian product of graphs）、图的张量积（英语：tensor product of graphs）、图的强乘积（英语：strong product of graphs）、图的字典积等， 图的串并联（英语：series–parallel graph）等。 在超图中，允许一条边连接多于两个节点。 无向图可以看作是由1-单纯形（边）和0-单纯形（节点）组成的单纯复形。由此，复形成为图的推广，其中允许维度更高的单纯形。 图可以看作是一种拟阵。 在模型论中，图是一个结构。这样一来，边的数量可以是任意基数。参见图极限。 在计算生物学中，幂图（英语：power graph analysis）推广了无向图的定义。 在地理信息系统中，为了进行道路网络或电网的时空分析而提出的几何网络（英语：geometric networks）的定义参考了图，并借用了许多图论的概念。 概念图 图 (数据结构) 图论 图数据库 网络理论 Trudeau, Richard J. Introduction to Graph Theory Corrected, enlarged republication. New York: Dover Pub. 1993: 19 [8 August 2012]. ISBN 978-0-486-67870-2. （原始内容存档于2019-05-05）. A graph is an object consisting of two sets called its vertex set and its edge set.  See: J. J. Sylvester (February 7, 1878) "Chemistry and algebra," （页面存档备份，存于互联网档案馆） Nature, 17 : 284. doi:10.1038/017284a0. From page 284: "Every invariant and covariant thus becomes expressible by a graph precisely identical with a Kekuléan diagram or chemicograph." J. J. Sylvester (1878) "On an application of the new atomic theory to the graphical representation of the invariants and covariants of binary quantics, – with three appendices," （页面存档备份，存于互联网档案馆） American Journal of Mathematics, Pure and Applied, 1 (1) : 64–90. doi:10.2307/2369436. JSTOR 2369436 . The term "graph" first appears in this paper on page 65. Gross, Jonathan L.; Yellen, Jay. Handbook of graph theory. CRC Press. 2004: 35 [2021-08-14]. ISBN 978-1-58488-090-5. （原始内容存档于2021-08-14）.  Bender & Williamson 2010，第148頁. 参见 Iyanaga and Kawada, 69 J, p. 234 or Biggs, p. 4. Bender & Williamson 2010，第149頁. Graham et al., p. 5. Bender & Williamson 2010，第161頁. 徐 2004，第1頁. Strang, Gilbert, Linear Algebra and Its Applications 4th, Brooks Cole, 2005 [2021-08-14], ISBN 978-0-03-010567-8, （原始内容存档于2020-09-20）  Lewis, John, Java Software Structures 4th, Pearson: 405, 2013, ISBN 978-0133250121  Fletcher, Peter; Hoyle, Hughes; Patty, C. Wayne. Foundations of Discrete Mathematics International student. Boston: PWS-KENT Pub. Co. 1991: 463. ISBN 978-0-53492-373-0. A weighted graph is a graph in which a number w(e), called its weight, is assigned to each edge e.  徐 2004，第20-21頁. Grandjean, Martin. A social network analysis of Twitter: Mapping the digital humanities community. Cogent Arts & Humanities. 2016, 3 (1): 1171458 [2021-08-14]. doi:10.1080/23311983.2016.1171458 . （原始内容存档于2021-03-02）.  Pankaj Gupta, Ashish Goel, Jimmy Lin, Aneesh Sharma, Dong Wang, and Reza Bosagh Zadeh WTF: The who-to-follow system at Twitter （页面存档备份，存于互联网档案馆）, Proceedings of the 22nd international conference on World Wide Web. doi:10.1145/2488388.2488433. Introduction To Graph Theory, by Gary Chartrand and Ping Zhang, McGraw Hill 徐, 俊明. 图论及其应用 第二版. 合肥: 中国科学技术大学出版社. 2004. ISBN 7-312-00979-4.  Balakrishnan, V. K. Graph Theory 1st. McGraw-Hill. 1997. ISBN 978-0-07-005489-9.  Bang-Jensen, J.; Gutin, G. Digraphs: Theory, Algorithms and Applications. Springer. 2000 [2021-08-14]. （原始内容存档于2011-08-26）.  Bender, Edward A.; Williamson, S. Gill. Lists, Decisions and Graphs. With an Introduction to Probability. 2010 [2021-08-14]. （原始内容存档于2021-08-17）.  Berge, Claude. Théorie des graphes et ses applications. Paris: Dunod. 1958 （法语）.  Biggs, Norman. Algebraic Graph Theory 2nd. Cambridge University Press. 1993. ISBN 978-0-521-45897-9.  Bollobás, Béla. Modern Graph Theory 1st. Springer. 2002. ISBN 978-0-387-98488-9.  Diestel, Reinhard. Graph Theory 3rd. Berlin, New York: Springer-Verlag. 2005 [2021-08-14]. ISBN 978-3-540-26183-4. （原始内容存档于2019-12-16）.  Graham, R.L.; Grötschel, M.; Lovász, L. Handbook of Combinatorics. MIT Press. 1995. ISBN 978-0-262-07169-7.  Gross, Jonathan L.; Yellen, Jay. Graph Theory and Its Applications. CRC Press. 1998. ISBN 978-0-8493-3982-0.  Gross, Jonathan L.; Yellen, Jay. Handbook of Graph Theory. CRC. 2003. ISBN 978-1-58488-090-5.  Harary, Frank. Graph Theory. Addison Wesley Publishing Company. 1995. ISBN 978-0-201-41033-4.  Iyanaga, Shôkichi; Kawada, Yukiyosi. Encyclopedic Dictionary of Mathematics. MIT Press. 1977. ISBN 978-0-262-09016-2.  Zwillinger, Daniel. CRC Standard Mathematical Tables and Formulae 31st. Chapman & Hall/CRC. 2002. ISBN 978-1-58488-291-6.  Trudeau, Richard J. Introduction to Graph Theory Corrected, enlarged republication. New York: Dover Publications. 1993 [8 August 2012]. ISBN 978-0-486-67870-2. （原始内容存档于2019-05-05）.  Springer-Verlag, Heidelberg. Graph Theory. 2016 [2019-07-22]. （原始内容存档于2012-02-08）.  维基共享资源上的相關多媒體資源：图 埃里克·韦斯坦因. Graph. MathWorld.  数学主题