- 图的基本概念
- 图的基本属性和操作
Graph
图记为: G = ( V , E ) G = (V, E) G=(V,E), V V V:图中的顶点集合, E E E:图中的边集合。
V = { a , b , c , d , e , f } , E = { e 1 , e 2 , e 3 , e 4 , e 5 , e 6 , e 7 , e 8 , e 9 } V = \{a, b, c, d, e, f\},E = \{e_1, e_2, e_3, e_4, e_5, e_6, e_7, e_8, e_9\} V={a,b,c,d,e,f},E={e1,e2,e3,e4,e5,e6,e7,e8,e9}
e 1 = ( f , a ) , e 2 = ( a , b ) , e 3 = ( b , c ) , e 4 = ( c , d ) , e 5 = ( b , d ) , e 6 = ( a , d ) , e 7 = ( e , d ) , e 8 = ( a , e ) , e 9 = ( f , e ) e_1 = (f, a),e_2 = (a, b),e_3 = (b, c),e_4 = (c, d),e_5 = (b, d),e_6 = (a, d),e_7 = (e, d),e_8 = (a, e),e_9 = (f, e) e1=(f,a),e2=(a,b),e3=(b,c),e4=(c,d),e5=(b,d),e6=(a,d),e7=(e,d),e8=(a,e),e9=(f,e)
图的顶点数:order
,图的边数:size
.
- G ′ s o r d e r G's \ order G′s order: 6
- G ′ s s i z e G's \ size G′s size: 9
补图: G = ( V , E ) , G ˉ = ( V , E ′ ) G = (V, E), \ \bar{G} = (V, E') G=(V,E), Gˉ=(V,E′), ( u , v ) ∈ E , ( u , v ) ∉ E ′ (u, v) \in E, \ (u, v) \not \in E' (u,v)∈E, (u,v)∈E′
顶点的度:经过顶点 v v v边的数量,记为: d e g ( v ) deg(v) deg(v),图中最大的度记为: Δ ( G ) \Delta(G) Δ(G),最小的度记为: δ ( G ) \delta(G) δ(G),顶点数为: n n n。满足下面关系:
0 ≤ δ ( G ) ≤ d e g ( v ) ≤ Δ ( G ) ≤ n − 1 0 \le \delta(G) \le deg(v) \le \Delta(G) \le n - 1 0≤δ(G)≤deg(v)≤Δ(G)≤n−1
- 孤立顶点(isolated): 度为0的顶点。
- 垂点(pendant):度为1的顶点。
图的度和边的关系: m m m为图中的边数。
∑ v ∈ V d e g ( v ) = 2 m \sum_{v \in V} deg(v) = 2m v∈V∑deg(v)=2m
图的度序列:给定一个简单图 G G G,其顶点 v 1 , v 2 , ⋯ v n v_1, v_2, \cdots v_n v1,v2,⋯vn的度依次为: d 1 , d 2 , ⋯ d n d_1, d_2, \cdots d_n d1,d2,⋯dn, D = d 1 ⋯ d n D = d_1 \cdots d_n D=d1⋯dn即为图的度序列。度序列非递增或递减序列,如果 D D D为某个图的都序列,序列 D D D被称作可图的(Graphic)。同构的图具有相同的度序列,但是度序列相同的图不一定同构。
子图:给定一个图 G = ( V , E ) G = (V, E) G=(V,E), G G G的子图的顶点集来自 G G G顶点子集,边也是 G G G的边子集。子图记为: G ′ = ( V ′ , E ′ ) , V ′ ⊆ V , E ′ ⊆ E G' = (V', E'),V' \subseteq V,E' \subseteq E G′=(V′,E′),V′⊆V,E′⊆E:
- G ′ ≠ G G' \neq G G′=G: G ′ G' G′被称为 G G G的真子图(proper subgraph)。
- E ′ = E E' = E E′=E: G ′ G' G′被称为 G G G的诱导子图(induced subgraph)。
- V ′ = V V' = V V′=V: G ′ G' G′被称为 G G G的生成子图(spanning subgraph), G G G被称为 G ′ G' G′的生成超图。
Grpah Ops
union
: G 1 = ( V 1 , E 1 ) , G 2 = ( V 2 , E 2 ) G_1 = (V_1, E_1),G_2 = (V_2, E_2) G1=(V1,E1),G2=(V2,E2), G 3 = u n i o n ( G 1 , G 2 ) = ( V 3 , E 3 ) G_3 = union(G_1, G_2) = (V_3, E_3) G3=union(G1,G2)=(V3,E3), V 3 = V 1 ∪ V 2 , E 3 = E 1 ∪ E 2 V_3 = V_1 \cup V_2,E_3 = E_1 \cup E_2 V3=V1∪V2,E3=E1∪E2。intersection
: G 3 = i n t e r s e c t i o n ( G 1 , G 2 ) = ( V 3 , E 3 ) G_3 = intersection(G_1, G_2) = (V_3, E_3) G3=intersection(G1,G2)=(V3,E3), V 3 = V 1 ∩ V 2 , E 3 = E 1 ∩ E 2 V_3 = V_1 \cap V_2,E_3 = E_1 \cap E_2 V3=V1∩V2,E3=E1∩E2。 ( V 1 ∩ V 2 ≠ ∅ V_1 \cap V2 \neq \emptyset V1∩V2=∅)cartesian product
: G 3 = G 1 × G 3 = ( V 3 , E 3 ) G_3 = G_1 \times G_3 = (V_3, E_3) G3=G1×G3=(V3,E3), V 3 = V 1 × V 2 V_3 = V_1 \times V_2 V3=V1×V2。
例如: { u , x } ∈ V 1 , { v , y } ∈ V 2 , ( < u , v > , < x , y > ) ∈ E 3 \{u,x\} \in V_1, \{v, y\} \in V_2,(<u, v>, <x, y>) \in E_3 {u,x}∈V1,{v,y}∈V2,(<u,v>,<x,y>)∈E3 意味着:
∃ ( u , x ) ∈ E 1 o r ( v , y ) ∈ V 2 \exist \ (u, x) \in E_1 \ or \ (v, y) \in V_2 ∃ (u,x)∈E1 or (v,y)∈V2
union & intersection
cartesian product
Types of Graphs
- 有向图(Digraph)
- 完全图:完全图是一个简单的无向图,其中每对不同的顶点之间都恰连有一条边相连。
- n n n : 完全图的order,顶点数。
- n ( n − 1 ) / 2 n(n-1)/2 n(n−1)/2 : 图的size。
- 加权图: G ( V , E , w ) G(V, E, w) G(V,E,w),边加权 w : E w : E w:E,点加权 w : V w : V w:V
- 二部图(bipartite grpahs):
G = ( V , E ) G=(V,E) G=(V,E)是一个无向图,如果顶点V可分割为两个互不相交的子集 ( A , B ) (A,B) (A,B),并且图中的每条边 ( i , j ) (i,j) (i,j)所关联的两个顶点 i i i 和 j j j 分别属于这两个不同的顶点集 ( i ∈ A , j ∈ B ) (i \in A,j \in B) (i∈A,j∈B),则称图 G G G为一个二分图。一个完全的二分图记为: K p , q K_{p,q} Kp,q, P P P:是第一个顶点集的顶点数量, q q q是另一个。
- 简单二部图
- 有向二部图
- 完全二部图
- 正则图(regular graph):正则图中每个顶点具有相同的度。正则的有向图也必须满足更多的条件,即每个顶点的出入度都要彼此相等。具有 k k k 个自由度的顶点的正则图被称为 k k k 度的k-正则图。 此外,奇数程度的正则图形将包含偶数个顶点。
- 同构图: G 1 G_1 G1和 G 2 G_2 G2具有相同数量的顶点和边,并且保持连通性,则他们是同构的。
Wakls,Paths,Cycles ⋯ \cdots ⋯
Walk
a → c a \to c a→c(含重复的边和点) : a → e 0 → b → e 2 → g → e 2 → b → e 1 → c a \to e_0 \to b \to e_2 \to g \to e_2 \to b \to e_1 \to c a→e0→b→e2→g→e2→b→e1→cTrail
a → c a \to c a→c(不含重复的边) : a → e 8 → g → e 7 → f → e 3 → b → e 2 → g → e 9 → c a \to e_8 \to g \to e_7 \to f \to e_3 \to b \to e_2 \to g \to e_9 \to c a→e8→g→e7→f→e3→b→e2→g→e9→cPath
a → c a \to c a→c(不含重复的点) :- a → g → c a \to g \to c a→g→c
- a → b → c a \to b \to c a→b→c
- a → b → g → c a \to b \to g \to c a→b→g→c
- a → g → b → c a \to g \to b \to c a→g→b→c
Cycle
: a → c a \to c a→c : a → b → c → a a \to b \to c \to a a→b→c→aConnectivity
: 连通性,如果一个图在其包含的任何顶点对之间存在连接(可达到),则称为连通图。Hamiltonian Cycle
: 经过图中的顶点一次。Eulerian Cycle
: 经过图中的边一次。偏心度
(eccentricity):一个顶点v到图中任何其他顶点的最大距离称为v的偏心度。图直径
(diameter):图中顶点的最大偏心度称为图的直径。图半径
(radius):图中顶点的偏心度的最小值。图中心
(center):图的中心是具有最小偏心度的顶点,一个图中可能有多个中心。(代表一些现实生活中的网络的图表中寻找中心是有益的,因为它有助于将共享的资源定位到消费者容易到达的地方。)