資料結構課上筆記14

2021-09-01 20:52:17 字數 2479 閱讀 8910

圖是一種:   資料元素間存在多對多關係的資料結構   加上一組基本操作構成的抽象資料型別。

圖 (graph) 是一種複雜的非線性資料結構,由頂點集合及頂點間的關係(也稱弧或邊)集合組成。可以表示為: g=(v, vr)

其中 v 是頂點的有窮非空集合;

vr 是頂點之間   關係的有窮集合,也叫做弧或邊集合。

弧是頂點的有序對,邊是頂點的無序對。

特點:(相對於線性結構)

頂點之間的關係是任意的

圖中任意兩個頂點之間都可能相關

頂點的前驅和後繼個數無限制

頂點(vertex):圖中的資料元素。線性表中我們把資料元素叫元素,樹中將資料元素叫結點。

邊:頂點之間的邏輯關係用邊來表示,邊集可以是空的。

無向邊(edge):若頂點v1到v2之間的邊沒有方向,則稱這條邊為無向邊。

無向圖(undirected graphs):圖中任意兩個頂點之間的邊都是無向邊。(a,d)=(d,a)

無向圖中邊的取值範圍:0≤e≤n(n-1)/2

有向邊:若從頂點v1到v2的邊有方向,則稱這條邊為有向邊,也稱弧(arc)。用表示,v1為狐尾(tail),v2為弧頭(head)。(v1,v2)≠(v2,v1)。

有向圖(directed graphs):圖中任意兩個頂點之間的邊都是有向邊。

有向圖中弧的取值範圍:0≤e≤n(n-1)

注意:無向邊用「()」,而有向邊用「< >」表示。

簡單圖:圖中不存在頂點到其自身的邊,且同一條邊不重複出現。

無向完全圖:無向圖中,任意兩個頂點之間都存在邊。

有向完全圖:有向圖中,任意兩個頂點之間都存在方向互為相反的兩條弧。

稀疏圖:有很少條邊。

稠密圖:有很多條邊。

鄰接點:若 (v, v´) 是一條邊,則稱頂點 v 和 v´互為 鄰接點,或稱 v 和 v´相鄰接;稱邊 (v, v´) 依附於頂點 v 和 v´,或稱 (v, v´) 與頂點 v 和 v´ 相關聯。

網(network):帶權的圖。

子圖(subgraph):假設g=(v,)和g『=(v',),如果v'包含於v且e'包含於e,則稱g'為g的子圖。

入度:有向圖中以頂點 v 為頭的弧的數目稱為 v 的入度,記為:id(v)。

出度:有向圖中以頂點 v 為尾的弧的數目稱為 v 的出度,記為:od(v)。

度(degree):無向圖中,與頂點v相關聯的邊的數目。有向圖中,入度表示指向自己的邊的數目,出度表示指向其他邊的數目,該頂點的度等於入度與出度的和。

迴路(環):第乙個頂點和最後乙個頂點相同的路徑。

簡單路徑:序列中頂點(兩端點除外)不重複出現的路徑。

簡單迴路(簡單環):前後兩端點相同的簡單路徑。

路徑的長度:一條路徑上邊或弧的數量。

連通:從頂點 v 到 v´ 有路徑,則說 v  和 v´ 是連通的。

連通圖:圖中任意兩個頂點都是連通的。

連通分量:無向圖的極大連通子圖(不存在包含它的 更大的連通子圖);

任何連通圖的連通分量只有乙個,即其本身;非連通圖有多個連通分量(非連通圖的每乙個連通部分)。

強連通圖: 任意兩個頂點都連通的有向圖。

強連通分量:有向圖的極大強連通子圖;任何強連通 圖的強連通分量只有乙個,即其本身;非強連通圖有多個 強連通分量。

生成樹:所有頂點均由邊連線在一起但不存在迴路的圖。(n個頂點n-1條邊)

資料結構課上筆記2

今天繼續說明了一些基本概念,講解了時間空間複雜度。對於概念的掌握也很重要 元素之間的關係在計算機中有兩種表示方法 順序映像和非順序映像,由此得到兩種不同的儲存結構 順序儲存結構和鏈式儲存結構。順序 根據元素在儲存器中的相對位置表示關係 鏈式 借助指標表示關係 資料型別 是乙個值的集合和定義在這個值集...

資料結構課上筆記6

本節課介紹了單鏈表的操作實現細節,介紹了靜態鍊錶。鍊錶帶頭的作用 對鍊錶進行操作時,可以對空表 非空表的情況以及 對首元結點進行統一處理,程式設計更方便。下面給出帶頭的單鏈表實現思路 按下標查詢 判斷非法輸入,當 1 p l next j 1 while p j i return 按值查詢 p l1...

資料結構課上筆記12

一般二叉樹 將其每個結點與完 全二叉樹上的結點相對照,儲存在一 維陣列的相應分量中。最壞情況 樹退化為線性後 深度為 k 的且只 有 k 個結點的右單支樹需要 長度為2 k 1 的一維陣列。lchild和rchild都是指向相同結構的指標 在 n 個結點的二叉鍊錶中有 n 1 個空指標域。typed...