首页 > 其他分享 >spfa任意两点间最短路径

spfa任意两点间最短路径

时间:2023-05-31 13:45:44浏览次数:52  
标签:dist int 路径 st start spfa 两点 include

#include<iostream>
#include<queue>
#include<string.h>
using namespace std;
#define INF 0x3f3f3f3f;
const int N = 3000;
int n, m;
int g[N][N], dist[N];
bool st[N];
queue<int>q;
void spfa(int start) {
    st[start] = true;
    dist[start] = 0;
    q.push(start);
    while (q.size()) {
        int t = q.front();
        q.pop();
        st[t] = false;
        for (int i = 1; i <= n; i++) {
            if (dist[i] > dist[t] + g[t][i])
            {
                dist[i] = dist[t] + g[t][i];
                if (st[i] == false)
                {
                    q.push(i);
                    st[i] = true;
                }
            }

        }
    }
}
int main() {
    int start, end;
    cin >> n >> m;
    cout << "请输入起点和终点" << endl;
    cin >> start >> end;
    memset(g, 0x3f, sizeof g);
    memset(dist, 0x3f, sizeof dist);
    int a, b, c;
    while (m--) {
        cin >> a >> b >> c;
        g[a][b] = g[b][a] = c;
    }
    spfa(start);
    cout << "最短路径为" << dist[end];
    return 0;
}

 

标签:dist,int,路径,st,start,spfa,两点,include
From: https://www.cnblogs.com/lhf123/p/17445879.html

相关文章

  • 第五节 3绝对路径和相对路径
    绝对路径:从根目录开始,一直到你需要的文件路径'D:\Python视频\Python9期视频\day09\02绝对路径和相对路径.py'相对路径:从当前文件夹开始,到你需要的文件路径,只需要输入文件路径,要打开的文件必须和运行的py文件必须得在一个文件夹下'02绝对路径和相对路径.py'fr=open......
  • 算法 dfs 二叉树的所有路径
    480. 二叉树的所有路径给一棵二叉树,找出从根节点到叶子节点的所有路径。Example样例1:输入:{1,2,3,#,5}输出:["1->2->5","1->3"]解释:1/\23\5样例2:输入:{1,2}输出:["1->2"]解释:1/2"""DefinitionofTreeNode:classTree......
  • 【无人机三维路径规划】基于蚁群算法实现无人机三维路径规划含Matlab代码
    ⛄内容介绍随着无人机可执行任务的多样化,航迹规划成为其顺利完成任务的基本前提。针对该问题,提出了基于蚁群算法的无人机航迹规划方法。运用等效地形模拟方法,将作战区域中的敌方威胁、地形障碍等效为山峰,构建了无人机航迹规划的场景。以此为基础,采用抽象蚁群,对起始点和终点已知的......
  • linux 中find命令查找到文件仅显示文件名、路径名、完整路径
     001、[root@PC1test3]#lstest1test2[root@PC1test3]#tree##测试数据.├──test1│  └──a.txt└──test2└──b.txt2directories,2files[root@PC1test3]#find./-name"*.txt"##一般显示模式./test1/a.txt......
  • java spring添加自义定拦截器后发生访问路径错误,状态码应该返回404时却返回200的bug
    javaspring添加自义定拦截器后发生访问路径错误,状态码应该返回404时却返回200的bug问题自义定拦截器LoginInterceptor继承HandlerInterceptor,自义定配置类继承WebMvcConfigurer。配置类中@OverridepublicvoidaddInterceptors(InterceptorRegistryregistry){......
  • 【转】【批处理】以管理员运行时修正当前路径
    转自:https://www.cnblogs.com/heroius/p/13600404.html在win7或更高版本windows系统中,使用管理员权限运行bat文件时,默认的当前路径(%CD%)被设置为C:\windows\system32。若脚本中使用了相对路径,那么运行将不正常。要解决此问题,在bat脚本的最前写入以下两行:@setlocalenableexte......
  • @Component与@WebFilter会路径冲突
    @WebFilter和@Component本文你主要讲解@WebFilter注解和@Component以及在使用过程中遇到的坑这是代码中出现的一个问题。这里讲一下原因@WebFilter1.基本概念:@WebFilter用于将一个类声明为过滤器,该注解将会在部署时候被容器处理,容器将根据具体的属性配置将相应的类部署为过......
  • 代码随想录算法训练营第17天 | ● 110.平衡二叉树 ● 257. 二叉树的所有路径 ● 404
     第六章二叉树part04 今日内容:  ●  110.平衡二叉树 ●  257. 二叉树的所有路径 ●  404.左叶子之和   详细布置  迭代法,大家可以直接过,二刷有精力的时候 再去掌握迭代法。  110.平衡二叉树 (优先掌握递归) 再一次涉及到,什么是高度,什么是......
  • hdu 1516(编辑距离+记录路径)
    最开始把问题搞错了,以为是两个串都可以做修改,无论我怎么想都不通。回到这个题目上,这道题和最长公共子序列很相似,思路可以说是一样的,包括记录路径。其实也就是根据递推数组的结果来判断。#include<iostream>#include<cstdio>#include<cstring>usingnamespacestd;constintma......
  • hdu 3635(并查集+路径压缩变形)
    解题思路:这道题想了我好久,因为我把城市的编号一起考虑进去了,结果想了好久都没A,最后看了别人的题解居然都没有考虑到城市的编号,不考虑城市编号的问题的话就是一个很水的并查集了。#include<iostream>#include<cstdio>#include<cstring>usingnamespacestd;constintMAXN=1000......