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

萧江做网站域名备案期间网站

萧江做网站,域名备案期间网站,建设厅网站如何查询企业信息,在手机上做网站时间复杂是 O(n2m) &#xff0c;n 表示点数&#xff0c;m 表示边数 模板(朴素法一般m等于n^2的时候使用) #include<bits/stdc.h> #include<algorithm> using namespace std; const int N510; int g[N][N]; //为稠密阵所以用邻接矩阵存储 int dist[N]; //用…

时间复杂是 O(n2+m) ,n 表示点数,m 表示边数

模板(朴素法一般m等于n^2的时候使用)

#include<bits/stdc++.h>
#include<algorithm>
using namespace std;
const int N=510;
int g[N][N];    //为稠密阵所以用邻接矩阵存储
int dist[N];    //用于记录每一个点距离第一个点的距离
bool st[N];     //用于记录该点的最短距离是否已经确定int Dijkstra()
{memset(dist, 0x3f,sizeof dist); //初始化距离  0x3f代表无限大dist[1]=0;                      //第一个点到自身的距离为0for(int i=0;i<n;i++)            //有n个点所以要进行n次 迭代{int t=-1;                   //t存储当前访问的点for(int j=1;j<=n;j++)       //这里的j代表的是从1号点开始if(!st[j]&&(t==-1||dist[t]>dist[j]))     t=j;st[t]=true;   //找到了距离最小的点t,并用最小的点t去更新其他的点到起点的距离for(int j=1;j<=n;j++)dist[j]=min(dist[j],dist[t]+g[t][j]);}if(dist[n]==0x3f3f3f3f) return -1;  //如果第n个点路径为无穷大即不存在最低路径return dist[n];
}
int main()
{cin>>n>>m;memset(g,0x3f,sizeof g);    //初始化图 因为是求最短路径//所以每个点初始为无限大while(m--){int x,y,z;cin>>x>>y>>z;g[x][y]=min(g[x][y],z);     //如果发生重边的情况则保留最短的一条边}cout<<Dijkstra()<<endl;return 0;
}

模板(堆优化版一般在m等于n的时候使用)

#include<iostream>
#include<cstring>
#include<algorithm>
#include<queue>
using namespace std;
typedef pair<int,int>PII;   //堆里储存距离和编号
const int N=1e6+10;
int n,m;
int h[N],w[N],e[N],ne[N],idx;  //对于每个点k,开一个单链表,存储K所有可以走到的点,h[k]存储这个单链表的头节点 
int dist[N];  //存储距离
bool st[N];    //储存状态//添加一条a到b的边 
void add(int a,int b,int c){e[idx]=b,w[idx]=c,ne[idx]=h[a],h[a]=idx++; }int Dijkstra()
{memset(dist,0x3f,sizeof dist);  //距离初始化为最大值dist[1]=0;priority_queue<PII,vector<PII>,greater<PII>>heap; //小根堆heap.push({0,1}); //插入距离和节点编号while(heap.size()){auto t=heap.top();  //取距离原点最近的点heap.pop();int ver=t.second,distance=t.first; if(st[ver])continue; //如果该点已经确定,则跳过该点st[ver]=true;for(int i=h[ver];i!=-1;i=ne[i])//更新ver所指向的节点距离{int j=e[i];if(dist[j]>dist[ver]+w[i]){dist[j]=dist[ver]+w[i];heap.push({dist[j],j});   //最小距离入堆 } } } if(dist[n]==0x3f3f3f3f)return -1;return dist[n]; 
}int main(){cin>>n>>m;memset(h,-1,sizeof h);while(m--){int x,y,z;cin>>x>>y>>z;add(x,y,z);}cout<<Dijkstra()<<endl;return 0;
} 

http://www.yayakq.cn/news/623729/

相关文章:

  • 做游戏网站思想步骤网站优化策划方案
  • 绵竹网站建设网站前台的功能模块
  • 网站域名代备案wordpress 安全性
  • 自己网站做电子签章有效么食品建设网站
  • 做微信公众号必备的网站支持wordpress免费下载
  • seo 网站结构调整百度做网站推广
  • 网站建设的优点与不足新版wordpress如何添加标签
  • 怎么检查外包做的网站网站管理规章制度
  • 柳州网站制作服务商陕西省高速建设集团网站
  • php教育网站开发工作怎么直接更新wordpress
  • 专业推广企业网站公司织梦多个网站
  • 网站设计软件下载沧州关键词排名按天收费
  • 360网站收录提交入口大全子域名大全
  • 电商网站建设与运营方向就业前景杭州网络安全公司
  • 岳阳网站建设免费咨询最专业的佛山网站建设
  • 北京专业建设网站公司哪家好中装建设是做什么的
  • 动漫网站设计与实现wordpress页面打开404
  • php多语言网站开发做网站哪个公司比较好
  • 门户网站开展集约化建设的情况域名注册信息可以在哪里找到
  • 做盗版网站吗扬州住房城乡建设局网站
  • 网站设计 重庆工作室网站建设
  • 成都企业模版网站建设大连网站开发费多少钱
  • 资深的网站推广唐山公司网站建设 中企动力
  • 唐山市住房城乡建设部网站主页影视网站开发工程师
  • 长沙做网站哪个最好做网站制作
  • 电脑登录不了建设银行网站wordpress表单 慢
  • 长春网站制作小型网上商城系统
  • 评价校园网站建设范例新网站外链怎么做
  • 绍兴网站建设seo温州手机网站开发
  • 一个微信网站多少钱wordpress 关闭缓存