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

来宾网站建设/手机网站排名优化

来宾网站建设,手机网站排名优化,淄博一推网络科技有限公司,企业网站备案网址方法: 方法就是在进行松弛操作的时候,如果能通过某个点进行松弛操作,就把这个点的出去的那个点的前驱设置为这个点 正确性: 因为所有点都会被至少松弛到一次,如果不进行松弛操作,那么这个点的前驱就一定还是…

方法:

方法就是在进行松弛操作的时候,如果能通过某个点进行松弛操作,就把这个点的出去的那个点的前驱设置为这个点

正确性:

因为所有点都会被至少松弛到一次,如果不进行松弛操作,那么这个点的前驱就一定还是原来的前驱。这个是Dijkstra算法的一个很神奇的地方,如果能进行松弛操作,说明如果要通过最短路到达这个点,就只能修改这个点的前驱。

模板题目来源:

https://www.luogu.org/problemnew/show/CF20C

代码:

#include <iostream>
#include <queue>
#include <cstdio>
#include <vector>
#include <cstring>
#include <algorithm>using namespace std;const int N = 1e5+5;
const long long INF = 9223372036854775806;int n,m;
int vis[N];
int pre[N];
long long dis[N];
struct node{int u;long long w;
};
vector <int> ans;
vector <node> graph[N];
priority_queue <pair<long long,long long>,vector <pair<long long,long long> >,greater <pair<long long,long long> > > q;void add(int x,int y,long long z) //双向图
{node temp;temp.u=y;temp.w=z;graph[x].push_back(temp);temp.u=x;graph[y].push_back(temp);
}void Dijkstra(int x)
{while(!q.empty()){pair <long long,long long> temp;temp=q.top();q.pop();if(vis[temp.second]!=0) continue;vis[temp.second]++;vector <node> :: iterator it;for(it=graph[temp.second].begin();it!=graph[temp.second].end();it++){if(vis[it->u]!=0) continue;if(dis[it->u]>dis[temp.second]+(it->w)){dis[it->u]=dis[temp.second]+(it->w);pre[it->u]=temp.second;q.push(make_pair(dis[it->u],it->u));}}}
}int main()
{scanf("%d%d",&n,&m);int temp_x,temp_y;long long temp_z;for(int i=1;i<=m;i++){scanf("%d%d%lld",&temp_x,&temp_y,&temp_z);add(temp_x,temp_y,temp_z);}//初始化dis数组for(int i=1;i<=n;i++) dis[i]=INF;dis[1]=0;q.push(make_pair(dis[1],1));Dijkstra(1);bool flag=false;int x=n;while(true){if(x==1) flag=true;ans.push_back(x);x=pre[x];if(x==0) break;}if(!flag)printf("-1\n");else{for(int i=(int)ans.size()-1;i>=0;i--)printf("%d ",ans[i]);printf("\n");}return 0;
}

转载于:https://www.cnblogs.com/lixiao189/p/9335429.html

http://www.jmfq.cn/news/4881871.html

相关文章:

  • 帮妈妈做家务作文网站/提交链接
  • 潮州外贸网站建设/在线种子资源库
  • 公司做网站一般多少钱/搜索引擎调词平台哪个好
  • logo做ppt模板下载网站/站长工具是什么意思
  • php语言 网站建设/网络推广技术外包
  • 网站建设与管理就业/网站快速优化排名推荐
  • 杭州专业网站制作设计/百度入口的链接
  • 婚纱摄影手机网站欣赏/市场策划方案
  • 做pc端网站行情/sem是什么方法
  • 怎么做企业的网站/发布任务注册app推广的平台
  • 深圳市浩天建设网站/江阴网站制作公司
  • 网站开发的职业规划/最近的新闻大事
  • 制冷机电工程东莞网站建设/北京出大大事了
  • 做鞋子出口需要作网站吗/国内最新十大新闻
  • 基于html5的旅游网站的设计/营销策略主要包括哪些
  • 手机网站弹窗/培训网站推荐
  • 做效果图兼职的网站有哪些/权重查询
  • 没有公司网站如何做推广/百度100%秒收录
  • 怎么给钓鱼网站做防红/seo排名优化排行
  • 桂阳局网站建设方案/360安全网址
  • 政协信息化网站建设的请示/电商网站订烟平台
  • 网页设计代写价格/西安关键词seo公司
  • 众筹网站建设需要多少资金/手机怎么建立网站
  • 网站建设原则应考虑哪些内容/网络营销工具有哪些
  • 网站功能需求文档/怎样给自己的网站做优化
  • 做pc和移动网站的适配/网站优化公司哪家好
  • 上海网站建设哪家服务好/企业网站建设的流程
  • 网站外链建设工作总结/百度竞价软件哪个好
  • 虚拟展馆官方网站建设/上百度推广的网站要多少钱
  • 深圳正规网站制作哪里好/哪里有正规的电商培训班