有向圖和無向圖的相關概念

圖的定義:

  圖在數據結構中是中一對多的關係,一般分爲無向圖與無向圖

  常用 鄰接矩陣 或者 鄰接鏈表 來表示圖中結點的關係

  ⑴圖是由頂點集V和頂點間的關係集合E(邊的集合)組成的一種數據結構
  ⑵用二元組定義爲:G=(V,E)。

例如:

對於圖7-1所示的無向圖G1和有向圖G2,它們的數據結構可以描述爲:

      G1=(V1,E1), 其中 V1={a,b,c,d},E1={(a,b),(a,c),(a,d),(b,d),(c,d)},
                 G2=(V2,E2),其中 V2={1,2,3}, E2={<1,2>,<1,3>,<2,3>,<3,1>}。

有向圖與無向圖

    ⑴在圖中,若用箭頭標明瞭邊是有方向性的,則稱這樣的圖爲有向圖,否則稱爲無向圖。

    如圖7-1中:
         ①G1爲無向圖,   ②G2 爲有向圖。
    ⑵在無向圖中:一條邊(x,y)與(y,x)表示的結果相同,用圓括號表示,
    ⑶在有向圖中:一條邊<x,y>與<y,x>表示的結果不相同,故用尖括號表示。<x,y>表示從頂點x發向頂點y的邊,x爲始點,y爲終點。
    ⑷有向邊也稱爲弧,x爲弧尾,y爲弧頭,則<x,y>表示爲一條弧, 而<y,x>表示y爲弧尾,x爲弧頭的另一條弧 。

 

完全圖/稠密圖/稀疏圖:

  ⑴具有n個頂點,n(n-1)/2條邊的圖,稱爲完全無向圖,
  ⑵具有n個頂點,n(n-1) 條弧的有向圖,稱爲完全有向圖。
  ⑶完全無向圖和完全有向圖都稱爲完全圖。
  ⑷對於一般無向圖,頂點數爲n,邊數爲e,則 0≤e  ≤n(n-1)/2。
  ⑸對於一般有向圖,頂點數爲n,弧數爲e, 則 0≤e≤n(n-1)  。
  ⑹當一個圖接近完全圖時,則稱它爲稠密圖,
  ⑺當一個圖中含有較少的邊或弧時,則稱它爲稀疏圖。

度/出度/入度:

  ⑴在圖中,一個頂點依附的邊或弧的數目,稱爲該頂點的度。

  ⑵在有向圖中,一個頂點依附的弧頭數目,稱爲該頂點的入度。

  ⑶一個頂點依附的弧尾數目,稱爲該頂點的出度,某個頂點的入度和出度之和稱爲該頂點的度。

  ⑷若圖中有n個頂點,e條邊或弧,第i個頂點的度爲di,則有  e=1/2 * Σ(1<= i <= n,   di)

子圖

⑴若有兩個圖G1和G2, G1=(V1,E1), G2=(V2,E2), 滿足如下條件:
    V2⊆V1  ,E2⊆ E1,即V2爲V1的子集,E2爲E1的子集,則 稱圖G2爲圖G1的子圖。

權:
⑴在圖的邊或弧中給出相關的數,稱爲權。
⑵權可以代表一個頂點到另一個頂點的距離,耗費
   等,帶權圖一般稱爲網。

一個圖由多個結點以及邊組成。

無向圖例子:

  

  有向圖例子:

  

從上述例子中可以看出,一個圖表是由數個頂點和邊組成的。

  其中,無向圖的邊是沒方向的,即兩個相連的頂點可以互相抵達。

  而有向圖的邊是有方向的,即兩個相連的頂點,根據邊的方向,只能由一個頂點通向另一個頂點。(當然,如有向圖例子中的2和3,由於有兩個指向對方的方向,所以2和3是互通的。)

完全圖

連通圖:如果一個無向圖從每一個頂點到其他頂點都存在一條路徑,則稱該無向圖爲連通圖

強連通圖:具有這樣的性質的有向圖稱爲是強連通的,如果不是強連通的,

弱連通圖:它的基礎圖,即去掉弧上的方向所形成的的圖,是連通的,那麼該有向圖稱爲弱連通的

完全無向圖:具有n個頂點,並具有n(n - 1)/2 條邊的圖,稱爲完全無向圖(每個頂點到其他頂點都有邊),連通圖

完全有向圖:具有n個頂點,並且具有n(n - 1) 條邊的有向圖,稱爲完全有向圖(每個頂點到其他頂點都有相互兩條邊),強連通圖

完全圖:完全無向圖和完全有向圖都稱爲完全圖

鄰接矩陣

定義:
設無向圖G=(V,E)G=(V,E),其中頂點集V=v0,v1,v2,...,vnV=v1,v2,...,邊集E=e0,e1,e2,...,eεE=e1,e2,...,eε。用aijaij表示頂點vivi與頂點vjvj之間的邊數,可能取值爲0,1,2,…,稱所得矩陣A=A(G)=(aij)n×nA=A(G)=(aij)n×n爲圖G的鄰接矩陣

性質:

類似地,有向圖D的鄰接矩陣A(D)=(aij)n×nA(D)=(aij)n×n, aijaij表示從始點vivi到終點vjvj的有向邊的條數,其中vivi和vjvj爲D的頂點

示例,求圖所示簡單圖的鄰接矩陣?

解:根據定義,可求得該無向圖的鄰接矩陣爲

注:鄰接矩陣是描述圖的一種常用的矩陣表示。

 

關聯矩陣

定義:
設任意圖G=(V,E)G=(V,E),其中頂點集V=v1,v2,...,vnV=v1,v2,...,vn,邊集E=e1,e2,...,eεE=e1,e2,...,eε。用mijmij表示頂點vivi與邊ejej關聯的次數,可能取值爲0,1,2,…,稱所得矩陣M(G)=(mij)n×εM(G)=(mij)n×ε爲圖G的關聯矩陣

類似地,有向圖DD的關聯矩陣M(D)=(mij)n×εM(D)=(mij)n×ε的元素mi×jmi×j定義爲:

示例,求圖中有向圖的鄰接矩陣和關聯矩陣

解:根據定義,可求得該有向圖的鄰接矩陣:

關聯矩陣:

注:關聯矩陣是描述圖的另一種矩陣表示。

參考地址:

https://blog.csdn.net/Hanging_Gardens/article/details/55670356

https://blog.csdn.net/legendaryhaha/article/details/83049101

https://www.cnblogs.com/schips/p/10632250.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章