dijkstra
Posted ww123
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了dijkstra相关的知识,希望对你有一定的参考价值。
#defien Max 5000 int n,m,k; typedef pair<int,int> pai; vector<int>v; vector <pai> vec[Max]; void dij() { int dis[Max]; memset(dis,INF,sizeof(dis)); dis[t]=0; queue <int> qu; qu.push(t); while(!qu.empty()) { int k=qu.front(); qu.pop(); for(int i=0;i<vec[k].size();i++) { if(dis[vec[k][i].first]>dis[k]+vec[k][i].second) { dis[vec[k][i].first]=dis[k]+vec[k][i].second; qu.push(vec[k][i].first); } } } } int main() { scanf("%d%d",&n,&m); for(int i=1;i<=m;++i) { int x,y,z; scanf("%d%d%d",&x,&y,&z); vec[x].push_back(pai(y,z)); vec[y].push_back(pai(x,z)); } dij(); }
以上是关于dijkstra的主要内容,如果未能解决你的问题,请参考以下文章