趣味演算法 城市之間最短路徑

2021-06-16 08:10:04 字數 799 閱讀 5104

城市之間最短路徑:

演算法描述:

(1) 圖中所有頂點集合為v,最小生成樹頂點集合為u,初始時v包含所有頂點,u中只有起始頂點。

(2) 計算下乙個頂點到其實頂點v0的最短路徑,並加入u。

(3) 更新未加入u中的各個頂點到起始頂點的距離值為發現的最小的權值。

(4) 重複該計算方法。

#include #define max_dist 65535

#define max_point 5

void calc_dist(int arr[max_point][max_point], int nsize, int nstart)

arrpoints[nstart] = 1;

arrweight[nstart] = 0;

for (i = 0; i < max_point; i++)

}arrpoints[npoint] = 1;

printf("point:%d dist:%d \n", npoint, min);

// update the distance of the point from the start point

for (j = 0; j < max_point; j++)}}

}int main()

; int i = 0;

calc_dist(arrtest, max_point, 0);

scanf("%d", &i);

return 0;

}

演算法複雜度:

n*(2*n)

城市平亂(最短路徑)

時間限制 1000 ms 記憶體限制 65535 kb 難度 4 描述 南將軍統領著n個部隊,這n個部隊分別駐紮在n個不同的城市。他在用這n個部隊維護著m個城市的治安,這m個城市分別編號從1到m。現在,小工軍師告訴南將軍,第k號城市發生了 南將軍從各個部隊都派遣了乙個分隊沿最近路去往 城市平亂。現在...

最短路徑演算法 最短路

在每年的校賽裡,所有進入決賽的同學都會獲得一件很漂亮的t shirt。但是每當我們的工作人員把上百件的衣服從商店運回到賽場的時候,卻是非常累的!所以現在他們想要尋找最短的從商店到賽場的路線,你可以幫助他們嗎?input 輸入包括多組資料。每組資料第一行是兩個整數n m n 100,m 10000 n...

最短路徑演算法

floyd演算法 012345 001 54 1108 1 2 801 3 3 1035 45 302 5413520 floyd 演算法過程描述如下 首先 以邊集 初始化,得到所有的直接連通代價 依次考慮第 k個結點,對於 中的每乙個 i j 判斷是否滿足 s i j s i k s k j 如果...