弗洛伊德-华沙算法求任意两点之间的最短路径算法

对于弗洛伊德-华沙算法首先是要假设研究的图中是不包含有负边的,对于所给的图中的任意亮点v1,vm,假设两点之间存在一条连通路径,对于该路径中去掉头和尾节点,也就是v1,vm,剩下的节点也就称之为这条路径的过渡节点。为图中每个节点进行编号,然后如果图中有n个节点,那么节点编号就是从1到n。

对于给定的任意亮点v1和vm,如果他们之间相互连通,那么从节点v1开始,就可以找到至少一条以上v1路径抵达vm的路径,假设所有路径中对应节点最大编号是为k,那么也就是知道如果遍历所有从v1出发最终抵达vm的路径,组成这些路径的节点没有一个编号是能够超过k的。

于是k就能够将这些路径分为两部分,一部分包含了节点k,另一部分不包含节点k,于是从v1-vm的最短路径只有两种情况,一种就是要么包含节点k,另一种就是要么不包含节点k,如果是后者的话,那么最短路径中所有的节点的编号都不会大于k,如果情况属于前者的话,假设起始节点v1的编号为j,终节点vm的编号为j,那么最短路径可以切割成两部分,前一部分由编号为i的节点抵达编号为k的节点,后一部分由编号为k的节点抵达编号为j的节点,如下图所示:

添加图片注释,不超过 140 字(可选)

注意到由于编号k是节点i到节点j最短路径中的最大编号,那么路径p1和p2中的节点编号最大不超过k-1,有如下的关系成立:

添加图片注释,不超过 140 字(可选)

当然节点i到节点j的最短路径可能属于另一部分,也就是那些节点编号最大不超过k-1的路径,如果是这种情况的话,那么最短路径可以表示,如果节点i到节点j的最短路径不包含中间节点,也就是边(i,j)就是两者间的最短距离,这种情况认为路径中最大节点编号为0,那么如下公式成立:

添加图片注释,不超过 140 字(可选)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/466726.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【MySQL】2. 数据库基础

1. 数据库基础(重点) 1.1 什么是数据库 存储数据用文件就可以了,为什么还要弄个数据库? 文件保存数据有以下几个缺点: 文件的安全性问题 文件不利于数据查询和管理 文件不利于存储海量数据 文件在程序中控制不方便 数据库存储介…

告别紧张,轻松应对!公众演讲的实用技巧

告别紧张,轻松应对!公众演讲的实用技巧 公众演讲,对于许多人来说,是一项充满挑战的任务。面对众多的听众,紧张情绪往往难以避免,甚至可能影响到演讲的效果。然而,通过掌握一些实用的技巧&#…

常见的业务场景实现方案

1.解决请求服务器接口跨域的问题 本地项目请求服务器接口时,因为客户端的同源策略,导致了跨域问题 配置允许本地跨域: /api指代我们要请求的接口域名,例如:this.$axios.get(/api/app.php?mApp&cIndex&aind…

一种动态联动的实现方法

安防领域中的联动规则 有安防领域相关的开发经历的人知道,IPCamera可以配置使能“侦测”功能,并且指定仅针对图像传感器的某个区载进行侦测。除了基本的“移动侦测"外,侦测的功能点还有细化的类别,如人员侦测、车辆侦测、烟…

P1042 [NOIP2003 普及组] 乒乓球

题目描述&#xff1a; AC代码&#xff1a; #include<iostream> #include<cmath>using namespace std;const int N 25*250010; int a[N],b[N]; int k[2] {11,21};int main() {int n0;while(1){char c;cin >> c;//方便后面去做计算 if(c W) a[n] 1;if(c…

牛市下 AI + Web3 叙事引关注,Verasity 或成又一黑马项目?

事实上&#xff0c;在 ChatGPT 以及 Sora 大模型被相继提出后&#xff0c;AI 就成为了科技领域重点关注的板块&#xff0c;并引发了一轮又一轮的 AI 投资热潮。在传统科技领域引发的 AI 热潮&#xff0c;正在向加密行业拓展&#xff0c;Web3 领域也涌现出了不少 AIWeb3 概念的项…

单模场哈密顿量推导

满足麦克斯韦方程和边界条件的单模场又下式&#xff08;1&#xff09;&#xff0c;&#xff08;2&#xff09;给出 --------&#xff08;1&#xff09; ---------&#xff08;2&#xff09; , 单模场的经典场能或者哈密顿量又下式给出&#xff1a; &#xff08;3&#xff09…

编译esp32s3的ncnn,并运行mnist 手写数字识别

东哥科技&#xff0c;专注科技研发&#xff0c;wx交流&#xff1a;dg_i688 我的项目代码 https://github.com/cdmstrong/ncnn_on_esp32s3 下载ncnn git clone https://github.com/Tencent/ncnn.git安装idf 环境 这里直接按官网的可执行文件来就好了&#xff0c;直接安装完…

嵌入式Linux 内核的内存管理方法

内存管理的主要工作就是对物理内存进行组织,然后对物理内存的分配和回收。但是Linux引入了虚拟地址的概念。 虚拟地址的作用 如果用户进程直接操作物理地址会有以下的坏处: 1、 用户进程可以直接操作内核对应的内存,破坏内核运行。 2、 用户进程也会破坏其他进程的运行 …

传统电力运维企业的数字化转型案例

一. 传统电力运维企业面临的主要问题 上海某电力集团企业下属有成套设备公司、电力工程公司&#xff0c;依托于自身的设备制造和工程服务能力&#xff0c;以及多年积累的终端客户资源&#xff0c;几年前该公司成立了电力运维服务公司进入用户侧电力托管运维服务行业。 该公司…

【Linux系统编程】进程程序替换

介绍&#xff1a; 进程程序替换是指将一个进程中正在运行的程序替换为另一个全新的程序的过程&#xff0c;但替换不是创建新进程&#xff0c;只是将对应程序的代码和数据进行替换。具体来说&#xff0c;这个替换过程涉及将磁盘中的新程序加载到内存结构中&#xff0c;并重新建立…

Leetcode 31. 删除无效的括号

心路历程&#xff1a; 一开始看到有点懵&#xff0c;后来发现有点像按照一定规则穷举所有可能情况&#xff0c;想到了排列组合问题&#xff0c;再结合问题长度不固定&#xff0c;无法用已知个for循环表示&#xff0c;从而想到了回溯。这个题相当于需要在一定规则下枚举。 按照…

桌面云解决方案

桌面云解决方案是一种基于云计算的服务&#xff0c;它将用户的桌面环境托管在云端&#xff0c;允许用户通过互联网访问自己的虚拟桌面。这种解决方案为企业和个人用户提供了一种灵活、可扩展且成本效益高的桌面计算方式。以下是一些桌面云解决方案的关键特点和优势&#xff1a;…

MusicHiFi: Fast High-Fidelity Stereo Vocoding

文章目录 abstract abstract demo: https://musichifi.github.io/web/主要用于高精度的音乐场景文章主要做了两件事&#xff1a;&#xff08;1&#xff09;低频mel谱输入&#xff0c;生成更高频率的语音&#xff1b;&#xff08;2&#xff09;单声道音频生成立体声&#xff1b…

AI工具快速部署

演示站见文章底部 部署教程 搭建一键整合包&#xff0c;你需要的东西有&#xff1a; 一个最低1h1g的海外服务器 推荐服务器系统为&#xff1a;CentOS-7.9.2111-x64 一份NineAI一件整合包代码 一定的linux指令知识第一步 通过ssh工具连接服务器 同时打开宝塔面板至文件区域 将…

代码随想录算法训练营第二十五天|● 216.组合总和III ● 17.电话号码的字母组合(JS写法)

216 组合总和Ⅲ 题目链接/文章讲解&#xff1a;https://programmercarl.com/0216.%E7%BB%84%E5%90%88%E6%80%BB%E5%92%8CIII.html 视频讲解&#xff1a;https://www.bilibili.com/video/BV1wg411873x 方法一&#xff1a;自己写的 自己写的&#xff0c;本题和77很像&#xf…

连号区间数c++

题目 输入样例1&#xff1a; 4 3 2 4 1输出样例1&#xff1a; 7输入样例2&#xff1a; 5 3 4 2 5 1输出样例2&#xff1a; 9样例解释 第一个用例中&#xff0c;有 77 个连号区间分别是&#xff1a;[1,1],[1,2],[1,3],[1,4],[2,2],[3,3],[4,4][1,1],[1,2],[1,3],[1,4],[2,2…

关于Oracle Primavera P6的各数据库帐号用途

在使用/维护P6时&#xff0c;经常会用到各种不同的P6数据库用户&#xff0c;如在连接配置P6 Professional时用到的公共帐号pubuser&#xff0c;进入后台维护p6配置信息(adminpv)或开发常连接的privuser&#xff0c;亦或是配置BI Report/BUSINESS Intelligence报表套件用到的pxr…

Axure 中继器的Item属性介绍及使用

item.列名 获取数据行中指定列的值。 index 获取索引编号&#xff0c;编号起始值为1 isFirst 判断数据是否为第一行 isLast 判断是否为最后一行 isEven 判断是否为偶数行 isOdd 判断是否为奇数行 isMarked 判断行是否被标记 isVisible 改行是否为显示

8年测试总结,自动化测试必要注意点+自动化测试框架(汇总)

目录&#xff1a;导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09; 前言 1、开始自动化测试…