绝想首页

Dijkstra算法算法

甲虫 [无奈] 2013-04-08 09:22:14 星期一 晴天 查看:99 回复:0 发消息给作者




Dijkstra算法。


    设起点为sdist[i]si点的最短距离。mark[i]表示i点是否被标记(1为标记,0位未标记)


    、初始值如果map[s][i]有权(即原始图中有si的边)dist[i]map[s][i],否则dist[i]为无穷大。mark除了mark[s]1,其他的都为0


    、找到没有被标记的最小dist(即找到一个k,其中mark[k]=0,且dist[k]为最小)。把它标记(mark[k]=1)。


        如果找不到则结束


    、对于每一个还没有标记的点i,看看是否map[s][k]+map[k][i] < dist[i],如果小于,更新dist[i]。继续执行



参考程序


顶一下(33 写日记 1244143 234853
分享排行

 

 

留住已经逝去的峥嵘岁月 记住曾经绽现的万种风情 在记忆即将淡漠的时候 来把这些重新回味

Copyright (C) 2008-2014 www.juexiang.com, All Rights Reserved.

京ICP备2023001011号-3   京公网安备11010802011908号

客服QQ 1017160561 违法和不良信息举报电话 13148464312 邮箱 1017160561@qq.com