最短路之Dijkstra(单源)HDU 2544
#include <iostream>
using namespace std;
const int Max=;
int map[][];
int d[];
int middist;
bool s[];
void dijkstra(int n,int m)
{
for(int i=;i<=n;i++)
{
d[i]=map[][i];
s[i]=false;
}
int u=;
d[u]=;
s[u]=true;
for(int i=;i<=n;i++)
{
middist=Max;
for(int j=;j<=n;j++)
{
if((!s[j])&&d[j]<middist)
{
u=j;
middist=d[j];
}
}
s[u]=true;
for(int j=;j<=n;j++)
{
if((!s[j])&&map[u][j]<Max)
{
if(d[u]+map[u][j]<d[j])
{
d[j]=d[u]+map[u][j];
}
}
}
}
}
int main()
{
int N,M;
while(cin>>N>>M&&N!=&&M!=)
{
for(int i=;i<=N;i++)
for(int j=;j<=N;j++)
{
map[i][j]=Max;
}
for(int i=;i<=M;i++)
{
int p,q,v;
cin>>p>>q>>v;
map[p][q]=map[q][p]=v;
}
dijkstra(N,M);
cout<<d[N]<<endl;
}
return ;
}
最短路之Dijkstra(单源)HDU 2544的更多相关文章
- Dijkstra 单源最短路径算法
		Dijkstra 算法是一种用于计算带权有向图中单源最短路径(SSSP:Single-Source Shortest Path)的算法,由计算机科学家 Edsger Dijkstra 于 1956 年 ... 
- Dijkstra——单源最短路径
		算法思想 ①从一个源点开始,找距离它最近的点顶点v ②然后以顶点v为起点,去找v能到达的顶点w,即v的邻居 比较源点直接到 v的距离和(源点到v的距离+v到w的距离) 若大于后者则更新源点的到w的开销 ... 
- 【算法系列学习】Dijkstra单源最短路 [kuangbin带你飞]专题四 最短路练习 A - Til the Cows Come Home
		https://vjudge.net/contest/66569#problem/A http://blog.csdn.net/wangjian8006/article/details/7871889 ... 
- Dijkstra单源最短路径,POJ(2387)
		题目链接:http://poj.org/problem?id=2387 Dijkstra算法: //求某一点(源点)到另一点的最短路,算法其实也和源点到所有点的时间复杂度一样,O(n^2); 图G(V ... 
- [算法] dijkstra单源无负权最小路径算法
		#include <stdio.h>#include <stdlib.h>#include <string.h> #define INF 1000000#defin ... 
- 【模板 && 拓扑】 Dijkstra 单源最短路径算法
		话不多说上代码 链式前向星233 #include<bits/stdc++.h> using namespace std; ,_max=0x3fffffff; //链式前向星 struct ... 
- 最短路模板(Dijkstra & Dijkstra算法+堆优化 & bellman_ford  & 单源最短路SPFA)
		关于几个的区别和联系:http://www.cnblogs.com/zswbky/p/5432353.html d.每组的第一行是三个整数T,S和D,表示有T条路,和草儿家相邻的城市的有S个(草儿家到 ... 
- 【算法】单源最短路——Dijkstra
		对于固定起点的最短路算法,我们称之为单源最短路算法.单源最短路算法很多,最常见的就是dijkstra算法. dijkstra主要用的是一种贪心的思想,就是说如果i...s...t...j是最短路,那么 ... 
- Bellman-Ford 单源最短路径算法
		Bellman-Ford 算法是一种用于计算带权有向图中单源最短路径(SSSP:Single-Source Shortest Path)的算法.该算法由 Richard Bellman 和 Leste ... 
- 单源最短路模板 + hdu - 2544
		Floyd Floyd 本质上类似一种动态规划,dp [ i ] [ j ] = dp [ i ] [ k ] + dp[ k ] [ j ]. /** * Night gathers, and no ... 
随机推荐
- IDEA 打开多个项目
			简单的说只需要以下几步: 1.将需要同时打开的模块放在一个文件夹下,e.g. AModel 和 BModel 同时放在 Project 文件夹下. 2.在 IDEA 初始导入项目页面选择 open - ... 
- UVA10689 Yet another Number Sequence —— 斐波那契、矩阵快速幂
			题目链接:https://vjudge.net/problem/UVA-10689 题解: 代码如下: #include <iostream> #include <cstdio> ... 
- 网页上传FLV视频文件
			上传 flv格式文件一致提示文件类型不允许,是因为CI中的配置文件没有支持这个格式 在 application/config/mimes.php中加入 'flv' => array('video ... 
- COGS【345】共荣圈 && 【426】血帆海盗
			题面 UPD:COGS 貌似进不去了,链接失效就删掉了. 如果你不小心看到了题目评论区,那你就会知道这是一道双倍经验题,另一题的链接见题目评论区…… 网络流+tarjan好题,但如果你真的的理解了网络 ... 
- 在一个form表单中根据不同按钮实现多个action事件
			<form id="writeForm" method="post"> <div class="write-btn-tj" ... 
- C# GDI生成清晰【高质量】图片
			对于GDI+,在正常的操作,Bitmap,Graphcis,DrawImage或者DrawString ,生成图片的话,会产生很多杂点,或者是图片质量不稳定.尤其是在读取图片后,生成缩略图之后,文件会 ... 
- DDD领域驱动之干货 (一)
			说道DDD不得不说传统的架构与DDD的架构区别. 传统的架构不外乎就是三层,而在这三层里面又不断的细分,始终没有达到想要的效果,那么为什么当时还是采用三层. 当然在DDD没有提出的时候三层是大多数人的 ... 
- VC6.0 快捷键
			F1: 帮助 Ctrl+O :OpenCtrl+P :PrintCtrl+N :NewCtrl+Shift+F2 :清除所有书签F2 :上一个书签Shift+F2 :上一个书签Alt ... 
- 初始化cache_dir(squid)
			sed -i '/adjustFactor/d' /CNCLog/exactTraffic/conf/localTraffic.cfgecho "adjustFactor = '-0.67 ... 
- kitti 数据集解析
			1.KITTI数据集采集平台: KITTI数据采集平台包括2个灰度摄像机,2个彩色摄像机,一个Velodyne 3D激光雷达,4个光学镜头,以及1个GPS导航系统.坐标系转换原理参见click.KIT ... 
