兩天沒傳東西了,有點罪惡感。今天看了些密碼學的東西,發現那東西,說複雜也確實是,說簡單好像也挺簡單,主要也就是與、或、非、異或等各種變換。等有時間了自己好好寫寫。
先說說,今天寫的最短路徑,也就是搜尋,先小區域找,滾雪球,再找,確定最小的。ok!理解思想了,程式也就好說了。上**:
1/*dijkstra演算法
*/2 #include 3
4#define maxnode 30
5#define maxcost 1000
6int
dist[maxnode];
7int
cost[maxnode][maxnode];
8int n=5;9
void dijkstra(int
vbegin);
10void display(int
vbegin);
11int
main()
1220}21
/*到自己處為0
*/22
for(i=1;i<=n;i++)
2326 cost[1][2] = 10
;27 cost[1][5] = 100
;28 cost[1][4] = 30
;29 cost[2][3] = 50
;30 cost[3][5] = 80
;31 cost[4][3] = 20
;32 cost[4][5] = 60
;33 dijkstra(3
);34 display(3
);35
return0;
36}37void dijkstra(int
vbegin)
3847 flag[vbegin] = 1;48
49/*
求最短路徑
*/50
for(i=1;i<=n;i++)
5161
}62 flag[u] = 1
; 63
/*處理節點到達的問題
*/64
for(j=1;j<=n;j++)
6571}72
}73}74
void display(int
vbegin)
7585
else
8689
}90 }
演算法儲備之Dijkstra演算法求單源點最短路徑
迪傑斯特拉演算法求單元點最短路徑,圖的儲存結構為鄰接矩陣 在找最短距離和更新距離時都用for迴圈遍歷結點數 時間複雜度為o v include include include define v 9 int mindistance int dist,bool sptset return min ind...
c語言Dijkstra演算法
include dijkstra演算法 解決最短路徑問題,從乙個初始點v0出發,設定lowcost陣列,記錄初始點到每乙個頂點的最短路徑,設定path陣列 記錄初始點到每個點最短路徑所經過的每乙個點,設定visit陣列,記錄已經選入lowcost陣列的點設定為 1 下次經過不再選中。思想 選擇初始點...
Dijkstra演算法(C語言)
dijkstra演算法 1.定義概覽 dijkstra 迪傑斯特拉 演算法是典型的單源最短路徑演算法,用於計算乙個節點到其他所有節點的最短路徑。主要特點是以起始點為中心向外層層擴充套件,直到擴充套件到終點為止。dijkstra 演算法是很有代表性的最短路徑演算法,在很多專業課程中都作為基本內容有詳細...