- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
13 2 NO. 2 Vol. 13
2011 2 Journal of Tianj in Vocational Institutes Feb. 2011
Dij kstra 算法的优化
1 2
,
( 1. 天津市红桥区职工大学, 天津市 300131; 2. 天津城市建设学院, 天津市 300384)
: Dij kstra 算法是许多工程解决最短路径问题的理论基础, 可用来找出图中指定节点 其他节点的最短
距离,有着广泛的应用文章通过分析传统Dij kstra 算法的设计思想, 提出该算法在实现方法上存在的一些不足之
处, 并从节约存储空间和提高运算效率方面对其进行了改进, 并通过复杂性分析比较, 得出这种改进算法的效率优于
传统的Dijkstra 算法
: 最短路径 ;Dij kstra 算法; 邻接表; 堆排序
: TP312 : A : 1 73- 582X(2011) 02- 0089- 03
Dijkstra
, ,
,
, Dij kstra
, Dijkstra ,
Dij kstra
1. 算法的基本思想
Dijkstra ,
Dijkstra
Cost N G[3] , Cost [ i,j ] Vi,Vj , Vi Vj
, Cost[i,j] = Dist VS , Dist [ i]
VS Vi : Dist [i] = Cost[ S, i] Vi ! V,V
S , S= {VS}, VS
G Vi Dist [i] = Cost[ S, i] Vi ! V
( 1) Vj , D[j] = min{D[i] |Vi ! V- S}Vj VS
, S= S∀ {Vj }
(2) VS V - S VK D[j] + Cost [j , k] D
[k] , ( 3)
(3) Dist [ k] Disk[ k] = Dist[j] + Cost [j , k] ; 23 N- 1 ,
VS ,
2. 算法分析
, :
( 1) Cost , N # N,
: 2010- 11- 10
: 遇娜( 1977- ) , 女, 天津市人, 天津市红桥区职工大学讲师, 从事计算机方面的教学与研究
89
(2) (V- S) Vj , ,
(V- S) Vj
(3) , ,
S
(4) , ,
, ,
Dijkstra
Dijkstra , ,
1. 优化思路分析
( 1)
N # N(N ) , ,
(2)
, , ,
, , , 0
, O( logN) , ( N
) ,
,
2. 改进的Dijkstra 算法基本思想
S adj T[] , S , adj , T[]
, S= {V0}, T[] = adj [V0] , , T[] ,
current , current S ; , current
(Adj [current] - S) Vi ; S
S ( ∀ adj [S] ) - S) , T ,
, i ; i
, S ,
S Dij kstra G V0 D
[V] , G
1. 空间复杂度分析
Dijkstra , N # N(N
) , , , ,
,
, , O(E+ 2N) (E
) , D[ V]
, T[V]
O(E+ 4N) Dijkstra , ,
2. 时间复杂度分析
Dijkstra , ,
90
, ,
O(N # N) Dijkstr
文档评论(0)