博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Dij_heap__前向星。
阅读量:5093 次
发布时间:2019-06-13

本文共 1039 字,大约阅读时间需要 3 分钟。

//前向星struct node {    int nxt;    int val;    int lst;    node () {}    node (int next, int value) : nxt(next), val(value) {}};struct headnode {    int u;    int val;    headnode () {}    headnode (int uu, int value) : u(uu), val(value) {}    bool operator < (const headnode &a) const {        return val > a.val;    }};  // 用于优先队列而已。val是比较的值。dist[i]int dist[maxn];bool vis[maxn];node edge[maxn];int  last[maxn]void Dij(){    memset(dist, 0x3f, sizeof(dist));    memset(vis,  0,    sizeof(vis));    priority_queue
pq; pq.push(headnode(1, 0)); dist[1] = 0; headnode now; while (!pq.empty()) { now = pq.top(); pq.pop(); if (vis[now.u]) continue; vis[now.u] = true; for (int i=last[now.u]; i!=-1; i=edge[i].lst) { if (dist[edge[i].nxt] > edge[i].val + dist[now.u]) { dist[edge[i].nxt] = edge[i].val + dist[now.u]; pq.push(headnode(edge[i].nxt, dist[edge[i].nxt])); } } }}

 

转载于:https://www.cnblogs.com/cgjh/p/9043899.html

你可能感兴趣的文章
JavaScript学习总结
查看>>
Linux常用命令
查看>>
Spring Boot2.0 整合 Kafka
查看>>
GitHub开源:升讯威ADO.NET增强组件 sheng.ADO.NET.Plus V1.3
查看>>
在你自己的时区里,一切安排都准时!
查看>>
软件测试技术- 自动贩卖机-因果图&决策图
查看>>
CSS3 Box-sizing
查看>>
并发编程:守护进程、互斥锁、案例、进程间通讯
查看>>
如何使带背景图片的Button按钮中的文字居中偏上显示
查看>>
memcache、redis、mongoDB 如何选择?
查看>>
PHP获取汉字拼音首字母
查看>>
正则表达式2
查看>>
JS同源策略和跨域访问
查看>>
正则 去除html标签
查看>>
FZU 1889 龟兔赛跑
查看>>
java基础-Comparator接口与Collections实现排序算法
查看>>
ddrmenu
查看>>
Linux Shell常用shell命令
查看>>
项目上的阶段小结(二)
查看>>
android同一个TextView设置不同颜色字体
查看>>