最短路dijkstra(堆实现)
来源:互联网 发布:淘宝上买官换机的技巧 编辑:程序博客网 时间:2024/04/28 03:58
#include<iostream>#include<cstdio>#include<cstring>using namespace std;#include<queue>#define inf 0x3f3f3f3f#define mxn 2002struct point {int num,c;bool operator < ( const point & b ) const {return c < b.c;}bool operator > ( const point & b ) const {return c > b.c;}};int first[mxn], nxt[mxn], to[mxn], cost[mxn], dis[mxn], e;void add( int u, int v, int c ) {to[e] = v;cost[e] = c;nxt[e] = first[u];first[u] = e++;}void dijkstra( int s ) {memset( dis, 0x3f, sizeof( dis ) );priority_queue< point, vector<point>, greater< point > > q;point p;dis[s] = 0;p.num = s, p.c = 0;q.push( p );while( ! q.empty() ) {point p1 = q.top();q.pop();if( dis[p1.num] != p1.c ) continue;for( int i = first[p1.num]; i != -1; i = nxt[i] ) {int v = to[i];if( dis[v] > dis[p1.num] + cost[i] ) {dis[v] = dis[p1.num] + cost[i];point p2;p2.num = v;p2.c = dis[v];q.push( p2 );}}}}int main() {int n,m;while( scanf( "%d%d", &n, &m ) != EOF ) {e = 0;memset( first, -1, sizeof( first ) );for( int i = 1; i <= m; ++i ) {int u, v, c;scanf( "%d%d%d", &u, &v, &c );add( u, v, c );add( v, u, c );}int st,end;scanf( "%d%d", &st, &end );dijkstra( st );if( dis[end] == inf )printf( "-1\n" );elseprintf( "%d\n", dis[end] );}return 0;}
0 0
- 最短路dijkstra(堆实现)
- 最短路算法 堆优化 dijkstra+heap
- 最短路~dijkstra堆优化模板
- HDU2544 最短路 Dijkstra实现
- 优先队列Dijkstra实现最短路算法
- dijkstra+heap+multiset 实现最短路
- 算法:Python实现dijkstra最短路由
- HDU 2544 最短路(单源最短路 dijkstra / floyd / dijkstra(堆优化)/dijkstra+邻接链表+堆优化)
- BZOJ 3040 最短路(road) 堆优化Dijkstra
- [HDU 2544] 最短路 · 堆优化dijkstra
- [BZOJ 3040] 最短路(road) · 堆优化dijkstra
- HDU 2544 最短路【Dijkstra算法堆优化,Vector建图】
- poj 1511 最短路数据加强版 dijkstra堆优化
- POJ 3255 Roadblocks 最短路Dijkstra+堆优化
- 最短路变形 nyoj1248、poj1797 dijkstra+堆优化
- 最短路模板[spfa][dijkstra+堆优化][floyd]
- bzoj 3040: 最短路(road)(堆优化dijkstra)
- 【Dijkstra堆优化】【BZOJ 3040】 最短路(road)
- mysql 可视化工具 导入sql文件
- window.requestAnimationFrame(drawFrame, canvas)
- 美化TabHost
- HDU 1003 DP 问题
- Visual C++ 集成开发环境
- 最短路dijkstra(堆实现)
- 关于计算机视觉的各种库儿们
- 领导智慧在于如何做人
- 我没有他喜欢的那个女生的硬件好,没有他们认识的时间长
- wikioi-天梯-提高一等-并查集-1074:食物链
- Fist blod!~~~
- linux awk命令详解
- HTML5 API --- Screen Orientation API简介
- Linux下ppa源管理