图的相关概念
一、圖的邏輯結構
圖是由頂點的有窮非空集合和頂點之間邊的集合組成,通常表示為:G=(V,E)
ps:G表示一個圖,V是圖G中頂點的集合,E是圖G中頂點之間邊的集合。
二、圖的基本概念
- 1.無向邊:頂點vi和vj之間的邊沒有方向,表示為(vi,vj)。
- 2.無向圖:圖的任意兩個頂點之間的邊都是無向邊。
- 3.有向邊:從頂點vi到vj的邊有方向,表示為<vi,vj>。
- 4.有向圖:圖的任意兩個頂點之間的邊都是有向邊。
- 5.簡單圖:若不存在頂點到其自身的邊,且同一條邊不重復出現。
- 6.鄰接、依附:無向圖中,對于任意兩個頂點vi和頂點vj,若存在邊(vi,vj),則稱頂點vi和頂點vj互為鄰接點,同時稱邊(vi,vj)依附于頂點vi和頂點vj。
- 7.無向完全圖:在無向圖中,如果任意兩個頂點之間都存在邊,則稱該圖為無向完全圖。
- 8.有向完全圖:在有向圖中,如果任意兩個頂點之間都存在方向相反的兩條弧,則稱該圖為有向完全圖。
三、圖的基本術語
-
1.稀疏圖:稱邊數很少的圖為稀疏圖;
-
2.稠密圖:稱邊數很多的圖為稠密圖。
-
3.頂點的度:在無向圖中,頂點v的度是指依附于該頂點的邊數,通常記為TD (v)。
-
4.頂點的入度:在有向圖中,頂點v的入度是指以該頂點為弧頭的弧的數目,記為ID (v);
-
5.頂點的出度:在有向圖中,頂點v的出度是指以該頂點為弧尾的弧的數目,記為OD (v)。
-
6.權:是指對邊賦予的有意義的數值量。
-
7.網:邊上帶權的圖,也稱網圖。
-
8.路徑:在無向圖G=(V, E)中,從頂點vp到頂點vq之間的路徑是一個頂點序列(vp=vi0,vi1,vi2, …,vim=vq),其中,(vij-1,vij)∈E(1≤j≤m)。若G是有向圖,則路徑也是有方向的,頂點序列滿足<vij-1,vij>∈E。
-
9.路徑長度:對于非帶權圖是路徑上邊的個數;對于帶權圖是路徑上各邊的權之和
-
10.回路(環):第一個頂點和最后一個頂點相同的路徑。
-
11.簡單路徑:序列中頂點不重復出現的路徑。
-
12.簡單回路(簡單環):除了第一個頂點和最后一個頂點外,其余頂點不重復出現的回路。
-
13.子圖:若圖G=(V,E),G’=(V’,E’),如果V’屬于V且E’屬于E ,則稱圖G’是G的子圖。
14.連通圖:在無向圖中,如果從一個頂點vi到另一個頂點vj(i≠j)有路徑,則稱頂點vi和vj是連通的。如果圖中任意兩個頂點都是連通的,則稱該圖是連通圖。
- 15.連通分量:非連通圖的極大連通子圖稱為連通分量。
- 16.強連通圖:在有向圖中,對圖中任意一對頂點vi和vj (i≠j),若從頂點vi到頂點vj和從頂點vj到頂點vi均有路徑,則稱該有向圖是強連通圖。
- 17.強連通分量:非強連通圖的極大強連通子圖
- 18.生成樹:n個頂點的連通圖G的生成樹是包含G中全部頂點的一個極小連通子圖。
這里注意一點:無向圖可以構成一個生成樹,特點是n個頂點具有n-1條邊,但反之則不成立,因為必須要連在一塊
- 18.生成森林:在非連通圖中,由每個連通分量都可以得到一棵生成樹,這些連通分量的生成樹就組成了一個非連通圖的生成森林。
四、圖的存儲結構
五、圖的遍歷操作
深度優先遍歷 (DFS):
基本思想:
⑴ 訪問頂點v;
⑵ 從v的未被訪問的鄰接點中選取一個頂點w,從w出發進行深度優先遍歷;
⑶ 重復上述兩步,直至圖中所有和v有路徑相通的頂點都被訪問到。
廣度優先遍歷 (BFS)
基本思想:
⑴ 訪問點v;
⑵ 依次訪問v的各個未被訪問的鄰接點v1, v2, …, vk;
⑶ 分別從v1,v2,…,vk出發依次訪問它們未被訪問的鄰接點,并使“先被訪問頂點的鄰接點”先于“后被訪問頂點的鄰接點”被訪問。直至圖中所有與頂點v有路徑相通的頂點都被訪問到。
六、涉及到圖的相關算法
參考文章
總結
- 上一篇: Spring事务传播机制和隔离级别
- 下一篇: 太辛苦的钱,我建议不要挣