题目:给定一个n个点m条边的有向图,图中可能存在重边和自环,所有边权均为非负值。请你求出1号点到n号点的最短距离,如果无法从1号点走到n号点,则输出-1。输入格式第一行包含整数n和m。接下来m行每行包含三个整数x,y,z,表示存在一条从点x到点y的有向边,边长为z。输出格式输出一个整数,表示1号点到n号点的最短距离。如果路径不存在,则输出-1。数据范围1≤n,m≤105,图中...
原创 2021-07-09 14:46:11
178阅读
DIJ算法优化 DIJ算法的时间复杂度是$O(n^2)$的,在一些题目中,这个复杂度显然不满足要求。所以我们需要继续探讨DIJ算法优化方式。 优化的原理 优化,顾名思义,就是用进行优化。我们通过学习朴素DIJ算法,明白DIJ算法的实现需要从头到尾扫一遍点找出最小的点然后进行松弛。这个扫描
转载 2019-08-21 18:55:00
542阅读
2评论
关于配对的一些小姿势: 1、配对是一颗多叉树。 2、包含优先队列的所有功能,可用于优化Dijkstra算法。 3、属于可并,因此对于集合合并维护最值的问题很实用。 4、速度快于一般的结构(左偏树,斜,随机……),具体时间复杂度: 合并(Merge):$O(1)$; 插入(Insert/P
转载 2018-11-20 23:31:00
222阅读
2评论
单源最短路径 — Dijkstra 算法
原创 2021-12-27 15:47:14
432阅读
转载 2021-08-04 16:11:00
111阅读
2评论
dijkstra STL 优化
原创 2021-07-07 17:49:33
150阅读
https://www.luogu.org/problem/show?pid=1339
原创 2021-08-05 09:37:00
119阅读
优化dijkstra 一:使用范围 单源最短路,所有边权都是正数,稀疏图(边数和点数相差不大),时间复杂度(mlogn); 二:优化思路 朴素版dijkstra 遍历所有点比较找出距离最近的点使用优先队列进行优化; 稀疏图用邻接表存图; 1.将优先队列定义成小根 priority_queue< ...
转载 2021-08-04 17:16:00
96阅读
2评论
朴素版本#include<bits/stdc++.h>using namespace std;const int maxn = 10010;const int inf = 0x3f3f3f3f;int a[maxn][maxn],dis[maxn],visit[maxn],n,m,s,t;void init() { for(int i = 1; i <= n; i+...
原创 2021-08-26 16:39:34
124阅读
朴素版Dijkstra 目标 找到从一个点到其他点的最短距离 思路 ①初始化距离dist数组,将起点d
原创 2022-09-23 18:18:21
106阅读
稀疏图 Dijkstra求最短路 II 给定一个 n 个点 m 条边的有向图,图中可能存在重边和自环,所有边权均为非负值。 请你求出 1 号点到 n 号点的最短距离,如果无法从 1 号点走到 n号点,则输出 −1。 输入格式 第一行包含整数 n 和 m。 接下来 m 行每行包含三个整数 x,y,z表 ...
转载 2021-07-28 11:38:00
114阅读
2评论
#dijkstra算法+优化 + 链式前向星版本 优化版本简单思路理清 typedef pair一下 PII 邻接矩阵、邻接表或链式前向星add一下建图 void dijkstra(int s){ 小根走起 给dist数组都赋值为无穷大(memset一下), 让起点拥有一个表现的机会(赋值为 ...
转载 2021-07-27 17:20:00
351阅读
2评论
#include <bits/stdc++.h>using namespace std;const int MAXN = 100005;const int MAXM = 200005;inline void read(int &num){ char ch; int flag=1; while(!isdigit(ch=getchar()))if(ch=...
原创 2023-02-20 16:46:05
60阅读
因为蒟蒻太弱了,所以搞个普及组最短路卡了两天,写个随笔聊以纪念。 Dijkstra,图论最短路算法基础算法之一,也是从时间复杂度上来说较优的算法(不卡负权的情况下)。 正常朴素算法O(N^2),起码比隔壁Floyed强。。。 本着精益求精的精神,神犇们创造出了一种名为优化的东东。 有人可能问,SP ...
转载 2021-08-26 21:34:00
596阅读
2评论
迷宫2 (nowcoder.com)https://ac.nowcoder.com/acm/problem/15196题目描述这是一个
原创 2022-06-15 09:37:22
238阅读
题目:香甜的黄油 题目链接:https://ac.nowcoder.com/acm/problem/22947 题意:有n只奶牛,p个牧场,每只奶牛都在一个牧场中(可能有奶牛在同个牧场)。确定一个集合的牧场,所有奶牛都到该牧场集合,要使得所有奶牛到该牧场的距离之和最短,求最短距离之和。 输入:第一行 ...
转载 2021-10-16 22:11:00
175阅读
2评论
深入理解dijkstra+优化 其实就这几种代码几种结构,记住了完全就可以举一反三,所以多记多练多优化多思考。 Dijkstra 对于一
转载 2017-09-12 00:51:00
206阅读
2评论
​​题目传送门​​题意:有一个赛车跑道,可以看做一个加权有向图。每个跑道(有向边)还有一个特点就是,会周期性地打开a秒,然后关闭b秒。只有在赛车进入一直到出来,该跑道一直处于打开状态,赛车才能通过。开始时所有跑道处于刚打开的状态,求从起点到终点的最短时间。分析:和普通的单源最短路类似,在更新边的权值的时候,更改下条件即可。首先需要判断时间time,time = dis[pos] % ( 开启时间
原创 2022-07-08 10:06:26
44阅读
题目链接: #include<stdlib.h>
原创 2023-03-04 10:49:06
110阅读
Dijkstra求最短路Ⅱ|优化 稀疏矩阵优化from acwing850Time limit:1sMemory limit:64MBProblem
原创 2022-07-11 16:27:28
123阅读
  • 1
  • 2
  • 3
  • 4
  • 5