Dijkstra学习笔记
暂时空白....
没有前置,我用vector存图
//存储
struct edge{
int w,to;//w是权值,to是连接到的下一条边
};
vector<edge> e;
//连边
...
for(int i=1;i<=m;i++)
{
int to,s,w;
scanf("%d%d%d",&s,&to,&w);
edge tmp;
tmp.to=to,tmp.w=w;
e[s].push_back(tmp);//有向图
tmp.to=s;
e[to].push_back(tmp);//无向图
}
每一次用选取当前数组中dis中存储的最小值的点,如果没有访问过,就可以访问,
...
for(int i=1;i<=n;i++)
{
int MIN=0x3f,now;
for(int j=1;j<=n;j++)
{
if(vis[j]==0&&dis[j]<MIN)
{
MIN=dis[j];
now=j;
}
}
vis[now]=1;
并更新周围的点
for(int j=0;j<e[now].size();j++)
{
//也许能用下面这条被注释的语句代替?
///dis[e[now][j].to]=max(dis[now]+e[now][j].w,dis[e[now][j].to]);
if(dis[now]+e[now][j].w<dis[e[now][j].to])
{
dis[e[now][j].to]=dis[now]+e[now][j].w;
}
}
}
应该写对了吧....因为我爆掉了qwq,而且似乎是RE?
知道为什么RE了,之前的没加vis[now]=true;,真是令人生艹

Dijkstra学习笔记的更多相关文章
- kruskal重构树学习笔记
\(kruskal\) 重构树学习笔记 前言 \(8102IONCC\) 中考到了,本蒟蒻不会,所以学一下. 前置知识 \(kruskal\) 求最小(大)生成树,树上求 \(lca\). 算法详 ...
- Day 4 学习笔记 各种图论
Day 4 学习笔记 各种图论 图是什么???? 不是我上传的图床上的那些垃圾解释... 一.图: 1.定义 由顶点和边组成的集合叫做图. 2.分类: 边如果是有向边,就是有向图:否则,就是无向图. ...
- Johnson算法学习笔记
\(Johnson\)算法学习笔记. 在最短路的学习中,我们曾学习了三种最短路的算法,\(Bellman-Ford\)算法及其队列优化\(SPFA\)算法,\(Dijkstra\)算法.这些算法可以快 ...
- Johnson 全源最短路径算法学习笔记
Johnson 全源最短路径算法学习笔记 如果你希望得到带互动的极简文字体验,请点这里 我们来学习johnson Johnson 算法是一种在边加权有向图中找到所有顶点对之间最短路径的方法.它允许一些 ...
- js学习笔记:webpack基础入门(一)
之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...
- PHP-自定义模板-学习笔记
1. 开始 这几天,看了李炎恢老师的<PHP第二季度视频>中的“章节7:创建TPL自定义模板”,做一个学习笔记,通过绘制架构图.UML类图和思维导图,来对加深理解. 2. 整体架构图 ...
- PHP-会员登录与注册例子解析-学习笔记
1.开始 最近开始学习李炎恢老师的<PHP第二季度视频>中的“章节5:使用OOP注册会员”,做一个学习笔记,通过绘制基本页面流程和UML类图,来对加深理解. 2.基本页面流程 3.通过UM ...
- 2014年暑假c#学习笔记目录
2014年暑假c#学习笔记 一.C#编程基础 1. c#编程基础之枚举 2. c#编程基础之函数可变参数 3. c#编程基础之字符串基础 4. c#编程基础之字符串函数 5.c#编程基础之ref.ou ...
- JAVA GUI编程学习笔记目录
2014年暑假JAVA GUI编程学习笔记目录 1.JAVA之GUI编程概述 2.JAVA之GUI编程布局 3.JAVA之GUI编程Frame窗口 4.JAVA之GUI编程事件监听机制 5.JAVA之 ...
随机推荐
- 怎么打印 sql 语句
1.添加jar包 <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api< ...
- 5.String StringBuffer StringBuilder
String,StringBuffer和StringBuilder三者的讲解 对于StringBuffer和StringBuilder是对Stirng的一个优化. 之前已经说过了,String对象一旦 ...
- C#中的三种timer
转 https://blog.csdn.net/hoiven/article/details/51362582 如果你需要使用规律的时间间隔重复执行一些方法,最简单的方式是使用定时器(timer). ...
- Java简单的数据库连接
package test.postgre; import java.sql.Connection; import java.sql.DriverManager; import java.sql.Res ...
- Git提交代码自动触发JenKins构建项目
1.需求场景 用户提交代码后自动触发jenkins构建项目 流程图如下: 2.JenKins安装Gitlab Hook Plugin插件 3.JenKins配置 4.Gitlab Hook Plugi ...
- Linux ip命令详解
ip命令式用来配置网卡ip信息的命令,且是未来的趋势,重启网卡后IP失效 ip常见命令参数 Usage: ip [ OPTIONS ] OBJECT { COMMAND | help } ip [ - ...
- hibernate设置了not-null 为什么无效?
因为设错地方了! 错误--写在了property标签里 <property name="password" type="string" length=&q ...
- C++ 读书笔记1
c++ 笔记1 body { font-family: Helvetica, arial, sans-serif; font-size: 14px; line-height: 1.6; padding ...
- EntityFramework Code First便捷工具——数据迁移
使用EntityFramework Code First开发,数据迁移是一个不得不提的技术. 在我们的开发过程中,难免需要对模型进行改进,模型改进后,会导致实体集与数据库不一致,当然我们可以通过删除数 ...
- October 07th 2017 Week 40th Saturday
Knowledge is a treasure but practice is the key to it. 知识是宝藏,但实践才是打开它的钥匙. Experience often comes fro ...