目錄
1、圖的定義
圖G由頂點集V和邊集E組成,記爲G=(V,E),其中V(G)表示圖G中頂點的有限非空集;E(G)表示圖G中頂點之間的關係(邊)集合。若V={ v1,v2,...,vn},則用|V|表示圖G中頂點的個數,也稱圖G的階,E={(u,v)|u∈V,v∈V},用|E|表示圖G中邊的條數。
注意:線性表可以是空表,樹也可以是空樹,但圖不可以是空圖,就是說,圖中不能一個頂點也沒有,圖的頂點集V一定非空,但邊集E可以爲空,此時圖中只有頂點而沒有邊。
2、常見術語和概念
2.1、有向圖
若E是有向邊(也稱弧)的有限集合時,則圖G爲有向圖。弧是頂點的有序對,記爲<v,w>,其中v,w是頂點,v稱弧尾,w稱弧頭,<v,w>稱爲從頂點v到w的弧,也稱v鄰接到w,或w鄰接自v。
圖44-1(a)所示的有向圖G1可表示爲
G1 = (V1,E1)
V1 = {1,2,3} E1={<1,2>,<2,1>,<2,3>}
圖44-1 圖的示例
2.2、無向圖
若E是無向邊(簡稱邊)的有限集合時,則圖G爲無向圖。便是頂點的無序對,記爲(v,w)或(w,v),因爲(v,w)=(w,v),其中v.w爲頂點。可以說頂點w和頂點v互爲鄰接點。邊(v,w)依附於頂點w和v,或者說邊(v,w)和頂點v,w相關聯。
圖44-1(b)所示的無向圖G2可表示Wie
G2=(V2,K2)
V2={1,2,3,4}
E2={(1,2),(1.3),(1,4),(2,3),(2,4),(3,4)}
2.3、簡單圖
一個圖G若滿足:①不存在重複邊
②不存在頂點到自身的邊,則稱圖G爲簡單圖。
圖44-1中的G1和G2均爲簡單圖。
2.4、多重圖
若圖G中某兩個結點之間的邊數多於一條,又允許頂點通過同一條邊和自己關聯,則G爲多重圖。多重圖的定義和簡單圖是相對的。
2.5、完全圖(也稱簡單完全圖)
對於無向圖,|E|的取值範圍是0到n(n-1)/2,有n(n-1)/2條邊的無向圖稱爲完全圖,在完全圖中任意兩個頂點之間都存在邊,對於有向圖,|E|的取值範圍是0到n(n-1),有n(n-1)條弧的有向圖稱爲有向完全圖,在有向完全圖中任意兩個頂點之間都存在方向相反的兩條弧。圖44-1中G2是無向完全圖,而G3是有向完全圖。
2.6、子圖
設有兩個G=(V,E)和G'=(V',E'),若V'是V的子集,且E'是E的子集,則稱G'是G的子圖。若有滿足V(G')=V(G)的子圖G',則稱其爲G的生成子圖。圖44-1中G3爲G1的子圖。
注意:並非V和E的任何子集都能構成G的子圖,因爲這樣的子集可能不是圖,即E的子集中的某些邊關聯的頂點可能不在這個V的子集中。
2.7、連通、連通圖和連通分量
在無向圖中,若從頂點v到頂點w有路徑存在。則稱v和w是連通的。若圖G中任意兩個頂點都是連通的,則稱圖G爲連通圖,否則稱爲非連通圖。無向圖中的極大連通子圖稱爲連通分量(不是最大)。若一個圖有n個頂點,並且邊數小於n-1,則此圖必是非連通圖。如圖44-2(a)所示,圖G4有3個連通分量,如圖44-2(b)所示。
圖44-2 無向圖及其連通分量
2.8、強連通圖、強連通分量
在有向圖中,若從頂點v到頂點w和從頂點w到頂點v之間都有路徑,則稱這兩個頂點是強連通的。若圖中任何一對頂點都是強連通的,則稱此圖爲強連通圖。有向圖中的極大強連通子圖稱爲有向圖的強連通分量,圖G1的強連通分量如圖44-3所示。
圖44-3 G1的強連通分量
注意:強連通圖、強連通分量只是針對有向圖而言的。一般在無向圖中討論連通性,在有向圖中考慮強連通性。
2.9、生成樹、生成森林
連通圖的生成樹是包含圖中全部頂點的一個極小連通子圖。若圖中頂點樹爲n,則它的生成樹含有n-1條邊。對生成樹而言,若砍去它的一條邊,則會變成非連通圖,若加上一條邊則會形成一個迴路。在非連通圖中,連通分量的生成樹構成了非連通圖的生成森林。圖G2的一個生成樹如圖44-4所示。
圖44-4 G2的一個生成樹
注意:包含無向圖中全部頂點的極小連通子圖,只有生成樹滿足條件,因爲砍去生成樹的任意一條邊,圖將不再連通。
2.10、頂點的度、入度和出度
圖中每個頂點的度定義爲以該頂點爲一個端點的邊的數目。
對於無向圖,頂點b的度是指依附於該頂點的邊的條數,記爲TD(v)。
在具有n個頂點、e條邊的無向圖中,,即無向圖的全部頂點的度的和等於邊的2倍。
對於有向圖,頂點v的度分爲入度和出度,入度是以頂點v爲終點的有向邊的數目,記爲ID(v);而出度是以頂點v爲起點的有向邊的數目,記爲OD(v)。頂點v的度等於其入度和出度之和,即TD(v) = ID(v)+OD(v)。
2.11、邊的權和網
在一個圖中,每條邊都可以標上具有某種含義的數值,該數值稱爲該邊的權重,這種邊上帶有權值的圖稱爲帶權圖,也稱網。
2.12、稠密圖、稀疏圖
邊數很少的圖稱爲稀疏圖,反之稱爲稠密圖。洗漱和稠密本身是模糊的概念,稀疏圖和稠密圖常常是相對而言的。一般當圖G滿足|E|<|V|log|V|時,可以將G視爲稀疏圖。
2.13、路徑、路徑長度和迴路
頂點Vp到頂點Vq之間的一條路徑是指頂點序列Vp,Vi1,Vi2,...,Vim,Vq,當然關聯的邊也可以理解爲路徑的構成要素。路徑上邊的數目稱爲路徑長度。第一個頂點和最後一個頂點相同的路徑稱爲迴路或環。若一個圖有n個頂點,並且有大於n-1條邊,則此圖一定有環。
2.14、簡單路徑、簡單迴路
在路徑序列中,頂點不重複出現的路徑稱爲簡單路徑。除第一個頂點和最後一個頂點外,其餘頂點不重複出現的迴路稱爲簡單迴路。
2.15、距離
從頂點u從發到頂點v的最短路徑若存在,則此路徑的長度稱爲從u到v的距離。若從u到v根本不存在路徑,則記該距離爲無窮。
2.16、有向樹
一個頂點的入度爲0,其餘頂點的入度均爲1的有向圖,稱爲有向樹。