100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > 【dij】C初学者求助一道课本原题(Dijkstra算法)voidShortestPathDIJ(...

【dij】C初学者求助一道课本原题(Dijkstra算法)voidShortestPathDIJ(...

时间:2023-02-14 02:37:35

相关推荐

【dij】C初学者求助一道课本原题(Dijkstra算法)voidShortestPathDIJ(...

问题补充:

C初学者求助一道课本原题(Dijkstra算法)void ShortestPathDIJ(Mgraph G,int v0,PathMatrix &P,ShortPathTable &D){//求有向网G的v0顶点到其余顶点v的最短路径P[v]及其带权路径长度D[v]//若P[v][w]为TRUE,则w是从v0到v当前求的最短路径上的顶点//final[v]为TRUE当且仅当v在S中,即已经求得从v0到v的最短路径for (v=0; v 数学

答案:

【答案】 我也是初学者.不过大概看到懂:

1、D[w] = min + G.arcs[v][w];P[w] = P[v]; P[w][w] = TRUE; //P[w] = P[v] + P[w]

这句话就是传说中最短路径的“松弛”技术.(这个不懂没关系)

2、确实的,最短路径这种算法,就算你看懂了也没用,最主要是要去OJ上实践一下,才能够真正懂得算法的奥妙.

3、给你推荐几道最最简单的Dijkstra算法应用题吧:

ZOJ上的1221题;

POJ上的1258题;

ZOJ上的1406题;(这些题都是很经典的)

4、下面是我自己理解后给你写的Dijkstra算法,你的写法不好懂,我的比较清晰:

void Dijkstra()

{

int q,w;

for(q=1;q

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。