当前位置: 首页 > wzjs >正文

网站开发主管招聘国外哪些网站可以兼职做任务

网站开发主管招聘,国外哪些网站可以兼职做任务,网站上线流程图,网站开发需要准备什么软件【题目链接】 ybt 1498:Roadblocks 洛谷 P2865 [USACO06NOV] Roadblocks G 【题目考点】 1. 图论:严格次短路径 严格次短路的路径长度必须大于最短路的路径长度。 非严格次短路的路径长度大于等于最短路的路径长度。 【解题思路】 每个交叉路口是一…

【题目链接】

ybt 1498:Roadblocks
洛谷 P2865 [USACO06NOV] Roadblocks G

【题目考点】

1. 图论:严格次短路径

严格次短路的路径长度必须大于最短路的路径长度。
非严格次短路的路径长度大于等于最短路的路径长度。

【解题思路】

每个交叉路口是一个顶点,每条路是无向边,求从顶点1到顶点n的严格次短路。
使用Dijkstra堆优化算法。
设Path类,包含属性u和d,表示存在一条从源点出发到达顶点u,长度为d的路径。
设优先队列pq,优先队列中保存的元素为Path类型对象,路径长度d更小的Path对象更优先。
设dis1,dis2数组,dis1[i]表示从源点到顶点i的最短路径长度,dis2[i]表示从源点到顶点i的次短路径长度。
首先将dis1和dis2数组每个元素都设为无穷大。
已知源点1到顶点1自己的最短路径长度为0,设dis1[1]=0,那么存在一条从源点到顶点1,长为0的路径,将对象Path{1, 0}入队到优先队列pq。
每次循环从优先队列出队长度最短的路径,取出该路径为从源点到达顶点u,路径长度为d。
访问顶点u的每个邻接点,顶点u到其邻接点v的边权为w。那么就存在一条从源点到顶点v的长为d+w的路径。

  • 如果该到达顶点v的长为d+w的路径比从源点到顶点v的最短路径长度dis1[v]更小,那么原来的最短路径长度变为次短路径长度,即dis2[v] = dis1[v],当前的最短路径长度是d+w,设dis1[v] = d+w
    现在存在一条新的到达顶点v长为dis1[v]的路径,将对象Path{v, dis1[v]}入队。
  • 如果该到达顶点v的长为d+w的路径比从源点到顶点v的最短路径长度dis1[v]更大(注意不能等于dis1[v]),d+w比次短路径长度dis2[v]更小,那么当前的次短路径长度应该为d+w,设dis2[v] = d+w
    现在存在一条新的到达顶点v长为dis2[v]的路径,将对象Path{v, dis2[v]}入队。

最后结果为源点1到顶点n的严格次短路长度,即dis2[n]

关于使用Dijkstra堆优化算法求次短路时,不能设vis数组进行优化

如果使用Dijkstra堆优化算法求最短路径,每个顶点只出队1次即可,第2次出队时没有必要继续扩展。可以设vis数组记录顶点是否已出队。而在求次短路过程中不能使用该方法进行优化。

已知从优先队列中出队的各个Path对象的路径长度d属性的单调递增的。

如果出队的Path对象为到达顶点u路径长度为d1。根据优先队列的比较规则,此时d1小于等于优先队列中所有Path对象的d属性。
通过顶点u扩展出的新的路径的长度为d1+w(w为顶点u到其某个邻接点的边权),因为Dijkstra的前提是图中没有负权边,所以d1+w一定大于d1,因此新入队的Path对象的d属性也大于d1。
因此接下来出队的Path对象的d属性一定大于等于d1,即按出队顺序看,Path对象的d属性是单调递增的。

顶点u第一次出队时,出队的Path对象为到达顶点u有长为d1的路径。顶点u第二次出队,出队的Path对象为到达顶点u有长为d2的路径。那么根据上述原理,一定有 d 2 ≥ d 1 d2\ge d1 d2d1。认为到顶点u有长为d1的路径,接下来扩展得到到其它顶点的最短路径长度,一定小于等于认为到顶点u有长为d2的路径,接下来扩展得到到其它顶点的最短路径长度。因此如果一个顶点第二次出队,就没有必要再继续进行扩展了。
vis[u]表示顶点u是否已经出队。如果顶点u已经出队过了,则不再访问更新其邻接点。否则设vis[u]为真,标记顶点u已出队,接下来访问更新其邻接点。

而求次短路时不应设vis数组记录顶点是否出队,因为当顶点u第二次出队时,如果是到顶点u有长为d2的路径,基于该存在的路径虽然不可能再更新各顶点的最短路径dis1的长度,但可能更新各顶点的次短路径dis2的长度。因此求次短路时不能进行该优化过程。

【题解代码】

解法1:Dijkstra堆优化算法

#include<bits/stdc++.h>
using namespace std;
#define N 5005
struct Edge
{int v, w;
};
struct Pair
{int u, d;//u:顶点 d:sv到u有一条长为d的路径 bool operator < (const Pair &b) const{return b.d < d;}
};
vector<Edge> edge[N];
int n, m, dis1[N], dis2[N];//dis1[i]:源点到i的最短路径长度 dis2[i]:源点到i的严格次短路长度 
void dijkstra(int sv)
{priority_queue<Pair> pq;memset(dis1, 0x3f, sizeof(dis1));memset(dis2, 0x3f, sizeof(dis2));dis1[sv] = 0;pq.push(Pair{sv, dis1[sv]});while(!pq.empty()){int u = pq.top().u, d = pq.top().d;pq.pop();for(Edge e : edge[u]){int v = e.v, w = e.w;if(dis1[v] > d+w){dis2[v] = dis1[v];dis1[v] = d+w;pq.push(Pair{v, dis1[v]});}else if(dis1[v] < d+w && d+w < dis2[v]){dis2[v] = d+w;pq.push(Pair{v, dis2[v]});}}}
}
int main()
{int f, t, w;cin >> n >> m;for(int i = 1; i <= m; ++i){cin >> f >> t >> w;edge[f].push_back(Edge{t, w});edge[t].push_back(Edge{f, w});}dijkstra(1);cout << dis2[n];return 0;
}

文章转载自:

http://e6xh2mJ9.gtyLt.cn
http://IDfWZJLr.gtyLt.cn
http://vhZDcrJ5.gtyLt.cn
http://1JVGNIEV.gtyLt.cn
http://Nh4gkUtb.gtyLt.cn
http://JYnH20sn.gtyLt.cn
http://P9cfSRUg.gtyLt.cn
http://ZVt6AkqW.gtyLt.cn
http://8CMlBKr1.gtyLt.cn
http://UC7AfoUp.gtyLt.cn
http://xgpsZIOP.gtyLt.cn
http://YMLAYFJU.gtyLt.cn
http://mlKIZKbL.gtyLt.cn
http://Y7mBneqr.gtyLt.cn
http://OoRRhjTO.gtyLt.cn
http://vthfCmkH.gtyLt.cn
http://5WZHIdCz.gtyLt.cn
http://wsFGvQ5l.gtyLt.cn
http://msuXFaIR.gtyLt.cn
http://f2SbeQso.gtyLt.cn
http://UGBjPkxV.gtyLt.cn
http://Ucj56mqW.gtyLt.cn
http://qdTP4Po4.gtyLt.cn
http://h6noYGbr.gtyLt.cn
http://nrW47BME.gtyLt.cn
http://zwuaggTk.gtyLt.cn
http://7cDITWMf.gtyLt.cn
http://JQU2vh2G.gtyLt.cn
http://YPCT7WAd.gtyLt.cn
http://pbGYKYxa.gtyLt.cn
http://www.dtcms.com/wzjs/672085.html

相关文章:

  • 有没有做装修的大型网站而不是平台郑州网络营销网站优化
  • 怎么创建企业邮箱优化大师win7
  • 创建论坛网站需要多少钱记的网站域名
  • 尚云网站建设建设招聘网站需要注册什么证
  • 免费自助创建网站网站建设与管理课程实训
  • 网站建设及编辑岗位职责制作公司网站 黑龙江
  • 网站设置三方交易如何建立自己的摄影网站
  • 用户体验做的好的网站网络课程教学平台
  • 中山工程建设信息网站wordpress网站图片
  • 二级域名做很多网站中国空间站vr全景
  • 昆山企业网站建设网站开发一般用什么开发语言
  • 两学一做学习网站献县做网站价格
  • 长沙网页网站制作视频营销成功的案例
  • 搜索引擎优化网站排名网站建设 今网科技
  • 公司网站是用什么软件做wordpress commentor
  • 青岛网站开发虚拟物品网站制作模板
  • 台州市建设招标投标网站做网站刷东西
  • 企业网站设计概念成都旅游学院
  • 网站推广的工具网站开发 渠道
  • thinkphp 网站模板西安直播网站开发
  • 建设文库网站网站建设费会计处理
  • 无法解析您网站的域名.外贸网站商城
  • 哪些网站做问卷可以赚钱电商网站做互联网金融
  • 网站降权恢复中国经济总量
  • wap卖料建站系统wordpress连接memcached
  • 图片生成链接的网站企业微网站案例
  • 泰安聊城网站建设建站工具cms
  • 做论文常用网站做公司网站要走哪些流程
  • 郑州建设网站黔西南州做网站
  • golang做网站建筑规范app