第十三周專案三(Dijkstra演算法的驗證)

2021-07-24 20:45:41 字數 1483 閱讀 7880

問題及**:

*all right reserved.

*檔名稱:dijkstra演算法的驗證.cpp

*版本號;v1.0

*問題描述:

dijkstra演算法的驗證

*輸入描述:帶權圖的鄰接矩陣

*程式輸出:點到點的最短長度以及其路徑

/ [cpp] view plain copy

#include #include #define maxv 100 //最大頂點個數

#define inf 32767 //inf表示∞

#define maxsize 100

typedef int infotype;

//以下定義鄰接矩陣型別

typedef struct

vertextype; //頂點型別

typedef struct //圖的定義

mgraph; //圖的鄰接矩陣型別

//以下定義鄰接表型別

typedef struct anode //弧的結點結構型別

arcnode;

typedef int vertex;

typedef struct vnode //鄰接表頭結點的型別

vnode;

typedef vnode adjlist[maxv]; //adjlist是鄰接表型別

typedef struct

algraph; //圖的鄰接表型別

typedef struct

edge;

void ppath(int path,int i,int v); //前向遞迴查詢路徑上的頂點

void dispath(int dist,int path,int s,int n,int v);

void dijkstra(mgraph g,int v);

void arraytomat(int *arr, int n, mgraph &g);

void ppath(int path,int i,int v) //前向遞迴查詢路徑上的頂點

void dispath(int dist,int path,int s,int n,int v)

{ int i;

for (i=0; i

執行結果:

知識點總結:

對最短路徑的學習

學習心得:

最短路徑與前面的課程是融會貫通的,所以要先把前面的知識點給搞好了才容易往後學

第十三周專案三

檔名稱 jcy 作 者 賈存鈺 完成日期 2017年11月29日 問題描述 分塊查詢 cpp view plain copy include define maxl 100 資料表的最大長度 define maxi 20 索引表的最大長度 typedef intkeytype typedef cha...

第十三周專案三 Dijkstra演算法的驗證

問題及 煙台大學計算機與控制工程學院 作 者 孫麗瑋 完成日期 2016年11月22日 問題描述 從乙個頂點到其他定點的最短路徑 1 graph.h的 見圖基本演算法庫 2 graph.cpp的 見圖基本演算法庫 3 main.cpp的 include include include graph.h...

第十三周 專案三 Dijkstra演算法的驗證

問題描述及 煙台大學計控學院 作 者 邊朔 完成日期 2016年11月24日 問題描述 從乙個頂點到其他定點的最短路徑 void ppath int path,int i,int v 前向遞迴查詢路徑上的頂點 void dispath int dist,int path,int s,int n,in...