最短路——Dijkstra
来源:互联网 发布:室内设计网站 知乎 编辑:程序博客网 时间:2024/06/08 16:19
Dijkstra算法,不能处理负边负环,不连通时返回-1。使用优先队列可以优化一下,此处不做介绍。
贪心策略。
邻接矩阵实现。亦可用邻接表,效率好一些。
const int maxn = 110;const int max_int = ~(1<<31);const int min_int = (1<<31);bool vis[maxn];int cost[maxn][maxn], dist[maxn];//[0,max_int]int min(int a, int b){return a < b ? a : b;}int dijkstra(int s){memset(vis, 0, sizeof(vis));for(int i = 0; i < n; ++i){dist[i] = max_int;}dist[s] = 0;vis[s] = true;for(int k = 1; k < n; ++k){int maxv = max_int, v = -1;for(int i = 0; i < n; ++i){if(!vis[i] && d[i] < maxv){maxv = d[v = i];}}if(-1 == v)return -1;vis[v] = true;for(int i = 0; i < n; ++i){if(!vis[i]){d[i] = min(d[i], d[v] + cost[v][i]);}}}}
0 0
- 最短路——dijkstra
- 最短路——Dijkstra
- 最短路——dijkstra
- 最短路——dijkstra迪杰斯特拉
- hdu2544最短路——Dijkstra
- poj1062——最短路Dijkstra
- 最短路问题——Dijkstra算法
- hdu——2066(dijkstra最短路)
- HDOJ 4318 —— dijkstra + 优先队列 求最短路
- 最短路模板——dijkstra,SPFA(邻接表实现)
- hdu 2544——最短路 dijkstra算法
- C++实现最短路算法——Dijkstra算法
- ACM-最短路(SPFA,Dijkstra,Floyd)之最短路——hdu2544
- 最短路 Dijkstra算法
- 最短路之dijkstra
- hdu1874 Dijkstra 最短路
- HUD最短路 (Dijkstra)
- hdu2544 Dijkstra最短路
- vbox中centeos 虚拟机共享window7主机文件夹
- Android 悬浮窗
- Android 性能优化
- awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理。
- 解决Android SDK国内无法更新的问题
- 最短路——Dijkstra
- iframe 自适应高度js
- F2812 DSP程序运行在片内RAM和FLASH的区别
- DIY一个简易查询系统
- 基础篇(三) Activity和任务栈(Task)
- PHP判断一个string 是否是json string
- 23.Pascal's Triangle
- iOS 可变参数宏__VA_ARGS__
- jstl 遍历map