最短路径+堆
来源:互联网 发布:淘宝店铺怎么删除分类 编辑:程序博客网 时间:2024/06/01 22:42
#include <iostream>#include <cstdio>#include <cstring>#include <queue>#include <vector>using namespace std;struct Node{ int k; int w;};bool operator <(const Node &a,const Node &b){ return a.w>b.w;}priority_queue<Node> pq;bool bused[30010]={0};vector<vector<Node> > v;const unsigned int inf=1000000000;int main(){ int n,m,a,b,c; int i,j; Node p; scanf("%d%d",&n,&m); v.clear(); v.resize(n+1);//设置容器大小 memset(bused,0,sizeof(bused)); for(i=1;i<=m;i++) { scanf("%d%d%d",&a,&b,&c); p.k=b; p.w=c; v[a].push_back(p); } p.k=1; p.w=0; pq.push(p); while(!pq.empty()) { p=pq.top(); pq.pop(); if(bused[p.k]) continue; bused[p.k]=true; if(p.k==n) break; for(i=0,j=v[p.k].size();i<j;i++) { Node q; q.k=v[p.k][i].k; if(bused[q.k]) continue; q.w=p.w+v[p.k][i].w; pq.push(q); } } printf("%d",p.w); return 0;}
阅读全文
0 0
- 最短路径+堆
- Dijsktra 最短路径和堆算法
- 最短路径 A*算法 应用堆优化
- Node:最短路径之Dijkstra堆优化
- 最短路径算法
- 最短路径算法
- 最短路径理解
- 最短路径算法
- 最短路径算法
- 最短路径问题
- 最短路径
- 最短路径
- 最短路径算法
- 图@ 最短路径
- 最短路径
- 最短路径算法
- 最短路径
- hdu2544(最短路径)
- 懒惰的苏珊 UVa1620
- java原子更新器AtomicReferenceFieldUpdater的使用
- MFC实现ffmpeg流媒体数据推送与接收(1.获取设备)
- Java8-函数式接口理解及测试
- OracleWeblogic12C安装教程和在IDEA部署WebLogic12C项目分享经验
- 最短路径+堆
- Ubuntu16lts 安装Chrome浏览器
- C++矩阵相乘(对象化)
- 20款优秀的免费代码编辑器
- HDU 1848 Fibonacci again and again(博弈 SG运用)
- JSONP的原理
- spring演化历程
- Unity 游戏帧率优化,设置分辨率
- 创建private构造函数的对象