Dijkstra算法?

boomfly 2005-07-27 11:04:35
本人刚开始接触数据结构,对Dijkstra算法不是很了解,请高手们通俗具体的介绍一下Dijkstra算法。多谢。
...全文
185 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
metaphor 2005-08-09
  • 打赏
  • 举报
回复
呵呵,点集扩大,
点集中的点到起点S的最短距离是已知的,
开始点集中只有S,因为S到S距离为0
一遍又一遍的扫描其余点,求它到点集内各点的最短距离
若不为无穷大,则将此点加入点集,
直到所有的点都加入点集

在进行一次广度优先的遍历,复杂度为n2
pcboyxhy 2005-07-31
  • 打赏
  • 举报
回复
其实就是一个贪心算法
snowbirdfly 2005-07-31
  • 打赏
  • 举报
回复
任意找本数据结构的书,在图的一章都会有详细介绍!
在运筹学上面也有详细介绍!
http://blog.csdn.net/finytang/archive/2005/04/22/358047.aspx
http://blog.csdn.net/angellou/archive/2004/10/13/134348.aspx
有它的代码实现!
Zephyrzzz 2005-07-30
  • 打赏
  • 举报
回复
令S为永久标号顶点集,R为临时标号顶点集.
1.令u1=0,uj=w1j(j=2,...,n),S={v1},R={v2,...,vn}.
2.取vi∈R,使ui=min{uj},vj∈R.
3.S=S∪{vi},R=R\{vi},R=ф则结束,uj为(v1,vj)最短路.
4.任意vj∈R,令uj=min{uj,ui+wij},转2.

^_^
metaphor 2005-07-27
  • 打赏
  • 举报
回复
j,i,k的三重循环,当i,j点的距离加j,k点的距离小于i,k的距离的时候,就把i,k的距离换
掉,最后矩阵里留下来的就是任意两点间的最短距离。
mmmcd 2005-07-27
  • 打赏
  • 举报
回复
楼上说的是Floyd算法

33,006

社区成员

发帖
与我相关
我的任务
社区描述
数据结构与算法相关内容讨论专区
社区管理员
  • 数据结构与算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧