挑戰408——數據結構(23)——樹與圖

我們先回顧一下之前介紹的樹的概念,在樹的定義中,每個節點只能有一個父類,並且樹中不能出現有環形。但是你可曾想過,當一棵樹沒有任何規則的時候,會發生什麼嗎?

圖的簡介

現在,我們給圖(graph)下一個定義:
圖,是一種用節點和邊來表示相互關係的數學模型。(A graph is a mathematical structure for representing relationships using nodes and edges)
其實,用句不是很嚴謹的話來說,圖可以看成是沒有任何限制的樹(比如,可以有環狀,可以有多種關係等等)。
下圖是一棵家族樹:
在這裏插入圖片描述
但是下圖不是一個家族樹:
圖二
圖三
從圖二,圖三中我們也可以看出,他們有環形,也沒有固定的roo,因此他們不是樹t,而是一幅圖。

與圖相關的一些概念

有向圖與無向圖

在離散數學課程中,我們學過圖這個基本的數學結構還有它的一些概念,現在回顧一下:
在這裏插入圖片描述
上圖中,每個表情可以看做是一個節點(也常稱爲頂點),而黑色的線將每個節點連接起來,稱爲邊。如果圖中的每一條邊,如果有表明方向,有起點終點,這樣的圖我們稱爲有向圖(Directed Graph即有方向的圖)
在這裏插入圖片描述
相反如果圖中的邊沒有方向性,那麼我們就稱這樣的圖爲無向圖(Undirected Graph即沒有方向的圖)
在這裏插入圖片描述
下圖就是有向圖跟無向圖的區別 :
在這裏插入圖片描述

權重與權重圖

權重:與給定邊之間的相關的成本。
例如航空公司航班圖表,按城市之間的里程加權:
在這裏插入圖片描述

先決條件圖

顧名思義,前面的事物要建立在後面的基礎上 ,操作系統的同步關係就是遵循這樣的規則:
在這裏插入圖片描述

基礎術語

在這裏插入圖片描述

  • 路徑(path):從某個頂點到另一個頂點之間的路徑,可以用經過的點或者經過的邊來表示。例如從V到Z,所經過的路徑可以表示爲:
    {b, h} 或者{V, X, Z}
  • 路徑長度(path length):路徑中包含的節點數或者邊的數量
  • 鄰居(neighbor):通過一條邊直接相連的兩個節點,稱爲鄰居,例如圖中的V和X
  • 環(cycle):路徑的起點跟終點都是在同一個節點中的路徑。例如(紅色線條)和藍色線條 路徑:{b, g, f, c, a} 或者 {V, X, Y, W, U, V},還有 .{c, d, a} 或者{U, W, V, U}.
    在這裏插入圖片描述
  • 無環圖:圖中不包含任何的環狀的圖
  • 循環(loop):連接自身頂點的邊。許多圖中是不允許包含有循環的
    在這裏插入圖片描述
  • 可達(reachable):如果存在一條路徑,使得a能夠到達b,就稱a到b可達
  • 連通(connect):如果圖中每一個頂點都能相互可達,那麼我們就稱這圖是連通的,稱爲連通圖
  • 完全圖(complete):如果圖中的 每個頂點都有一條邊可以直達每個頂點,那麼稱這樣的圖爲完全圖。
    在這裏插入圖片描述
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章