首页 > 公交线路
头像 wkewke
发表于 2022-07-04 16:34:12
采用Floyd算法(插点) 首先输入,将各个站点的距离用邻接矩阵G[][]储存。这里需要注意的是(坑点),题目可能会多次输入两个站点之间的距离,这个距离我们需要取它们之中的最小值(所以将G[][]初始为无穷大) 接着进行初始化,将站点间自己到自己的路径长度设为0 插点,将每两个站点间路径,和将其他 展开全文
头像 铁厂打工人
发表于 2021-02-10 18:00:27
公交线路 解题思路Dijkstra算法,基于贪心思想,适用于边的权值非负 算法流程:1.初始化dis[s]=0,其他节点值为无穷大2.找出一个未标记的,dis[x]最小的节点x,标记x3.更新x的所有出边4.重复2~3,直到所有点被标记 邻接矩阵写法 #include <bits/stdc+ 展开全文
头像 装糊涂高手_
发表于 2022-04-08 09:57:09
最短路模板题 坑点:题目可能会给你重边,只要选最小的一条即可 1、dij算法 #include <bits/stdc++.h> using namespace std; int n,m,s,t; int dis[1010]; bool vis[1010]; int G[1010][101 展开全文
头像 hzfan_club
发表于 2022-07-29 22:54:00
采用spfa算法实现 ```#include <cstdio> #include <cstring> #include <iostream> #include <algorithm> #include <queue> using name 展开全文
头像 胡琦1
发表于 2024-04-02 20:16:55
#include<bits/stdc++.h> using namespace std; int n,m,s,t;//n是点的数量m是边的数量从s到t的最短路就只需要把s到其他所有点的最短路求出来最后返回要求的那个点 int head[10005] 展开全文
头像 在刷题的单身狗很开心
发表于 2023-11-01 22:15:29
本题属于Dijkstra算法的模板题。只需要之前迪杰斯特拉算法求出起点s到每个点的最短距离。然后输出s到t的最短距离即可。 这里简要说一下迪杰斯特拉算法的原理: 迪杰斯特拉算法使用一个贪心的思想,在每一次的路径里面最短的那一个一定是确定的,也就是说不会被其他的路径影响从而边的更短。那么我 展开全文

等你来战

查看全部