高考申論題
111年
[資訊處理] 資料結構
第 四 題
用 G = (V, E)表示一個無方向性圖形,其中 V 是點的集合,E 是一組節點(Vertices)形成邊及對應權重(Weights)所組成的集合。今有一圖形 G = (V, E),V = {0, 1, 2, 3, 4, 5},圖形的邊與權重值以如下的定義儲存對應連接矩陣(Adjacency matrix)表示中的值
#define MAX_EDGES 100
typedef struct {
int col;
int row;
int weight;
} edge;
edge a[MAX_EDGES];
已知陣列 a 儲存對應連接矩陣相連接邊的內容如下:a = {(3, 0, 2), (4, 0, 1), (5, 0, 20), (2, 1, 7), (5, 1, 24), (3, 2, 15), (4, 2, 10), (5, 2, 25), (4, 3, 3)}。請畫出陣列 a 所儲存的圖形,然後,利用 Prim 演算法從節點 0 開始依加入其它節點的順序,畫出此圖之最小擴張樹(Minimum spanning tree),並計算其最低權重或成本值。(25 分)
📝 此題為申論題
思路引導 VIP
這是一題關於「圖形(Graph)」與「最小擴張樹(MST)」的計算題。
- 畫圖(Graph Drawing):根據
a陣列中的row,col,weight資訊繪製。例如(3, 0, 2)表示點 0 與點 3 之間有一條權重為 2 的邊。
🤖
AI 詳解
AI 專屬家教
【考點分析】 本題考查圖形的表示法(邊清單)以及 Prim 演算法建構最小擴張樹(MST)的步驟。重點在於正確辨識節點間的連接關係與權重。 【理論/法規依據】
▼ 還有更多解析內容