Dijkstra算法笔记---最短路
2013-10-28 17:07
218 查看
算法前提:
每条路径的距离无负值。
问题定义:
intput:
一个图G=(V,E),V表示点,E表示边;
起始点s;
点之间的距离(可连通);
output:
起始点s到其他每点的最短路程;
算法思想:
图例:
每条路径的距离无负值。
问题定义:
intput:
一个图G=(V,E),V表示点,E表示边;
起始点s;
点之间的距离(可连通);
output:
起始点s到其他每点的最短路程;
算法思想:
(初始化) d[s]<-0; //d[x]表示起始点s到x点(x∈V)的最短距离;s到s距离为0 for each v∈V do d[v]<-∞ //将s到其他点的距离赋为无穷大 S<-∅ //S是所有一直最短路径的顶点的集合,此时为空 Q<-V //Q为其他点:V-S (主体) while Q≠∅ do u<-Extract Min(Q) //从Q中取出d[x]最短的点为u,此时Q中已没有u这个点 S<-S∪{u} //把u加入S for each v∈adj{u} //观察每个和u相连的点v do if d[v]>d[u]+w(u,v) //如果已保存的(s到v的距离)>(s到u的距离)+(u到v的距离) then d[v]<-d[u]+w(u,v) //更新d[v]
图例:
相关文章推荐
- AYITACM2016省赛第四周 j-最短路(Dijkstra算法)
- [RedHat笔记]第三课:变量的种类及用法,alias命令,环境变量的分类和修改,输入输出重定向,for循环,文本处理类命令,grep命令,短路操作(&& ||)
- POJ 1062 昂贵的聘礼 (最短路应用 Dijkstra算法)
- 最短路 HDU杭电2544【dijkstra算法 || SPFA】
- 【算法系列学习】Dijkstra算法变形 [kuangbin带你飞]专题四 最短路练习
- 基于邻接表的有回溯最小堆优化的单源最短路Dijkstra算法
- HDU2544 最短路(dijkstra算法)
- 杭电 3790 最短路 Dijkstra算法
- hdu 1690 Bus System 最短路(Dijkstra算法)
- POJ-2387 Til the Cows Come Home(最短路 Dijkstra算法)
- PHP学习笔记——PHP逻辑运算符的特性(短路)
- Til the Cows Come Home(最短路—Dijkstra算法)
- Roadblocks(次短路-dijkstra算法)
- HDOJ 2112 HDU Today(最短路,dijkstra算法)
- dijkstra算法(单源最短路)模板
- sdut 2622 最短路径(Dijkstra算法求最短路)
- 最短路之 路径记录 dijkstra + floyd + SPFA 【小笔记】
- 算法导论学习笔记(18)——单源最短路径(Dijkstra算法实现)
- 杭电 3790 最短路 Dijkstra算法
- 2544 最短路 Dijkstra算法 Floyd算法 Bellman_Ford算法 SPFA算法