資料結構第七次上機試驗 最短路徑

2021-08-31 18:40:08 字數 1012 閱讀 7581

根據輸入的圖形,輸入起點和終點,求出最短路徑和最短路徑的長度。

1. 編寫一段**,接收鍵盤的輸入定點的數量,並以輸入的整數作為邊來建立圖形的鄰接矩陣(無向權重圖)。

例如:5 6 12 

表示頂點5和頂點6之間有邊,邊的權重為12

2. 列印出鄰接矩陣。

3. 輸入起點和終點。

4. 列印最短路徑和最短路徑的長度。

輸入:

1 3 5

1 4 30

2 1 2

3 2 15

3 6 7

5 4 4

6 4 10

6 5 18

列印出1,5兩點之間的最短距離和最短路徑 

#includeusing namespace std;

#define maxint 32767

#define mvnum 100

typedef int vextextype;

typedef int arctype;

bool vis[mvnum];

int dis[mvnum];

int path[mvnum];

int path[mvnum];

typedef structamgraph;

void createudn(amgraph &g)

}void shortestpath_dij(amgraph g,int v0){

for(int i=1;i<=g.vexnum;i++){

vis[i]=0;

dis[i]=g.arcs[v0][i];

if(dis[i]>vst>>ved;

shortestpath_dij(g,vst);

cout<"

從1到5的最短路徑長度為26

從1到5的最短路徑為1->3->6->4->5

第七次試驗

include include include include include include using namespace std define maxsize 100 typedef char elemtype typedef struct sqqueue void initqueue sqq...

第七次上機實驗

檔名稱 作 者 賴詩文 完成日期 2016 年 06月05日 版 本 號 v1.0 對任務及求解方法的描述部分 輸入描述 輸入兩個數 問題描述 求二個數的最小公倍數和最大公約數 程式輸出 略 問題分析 利用函式求 演算法設計 略 includeint fun int a,int b return b...

資料結構第七次作業

這個作業屬於哪個課程 這個作業要求在 homework 11472 這個作業的目標 掌握圖的鄰接矩陣和鄰接表表示 掌握圖的深度優先和廣度優先搜尋方法 理解圖的應用方法 學號2018204183 一 實驗目的 1 掌握圖的鄰接矩陣和鄰接表表示 2 掌握圖的深度優先和廣度優先搜尋方法 3 理解圖的應用方...