最短路汇总

发布时间:2026/7/29 8:28:50

最短路汇总
DijkstraDijkstra的原理/流程?Dijkstra 本质上的思想是贪心它只适用于不含负权边的图。1. 初始化其余节点的值为无穷大。2. 找一个值最小的未操作过节点节点把节点标记。3. 遍历的所有出边若则令4. 重复 23 两步,直到所有点都操作。时间复杂度为。Dijkstra 为什么是正确的当所有边长都是非负数的时候,全局最小值不可能再被其他节点更新.所以在第2步中找出的蓝点x必然满足已经是起点到的最短路径.我们不断选择全局最小值进行标记和拓展,最终可以得到起点到每个节点的最短路径的长度。想要优化就直接维护最小值用优先队列即可。codevoid Dijkstra(int s,int t){ memset(dist,127,sizeof(dist)),dist[s]0,q.clear(); for(int i1;in;i) q.insert(make_pair(dist[i],i)); while(!q.empty()){ xq.begin()-second,q.erase(q.begin()); if(xt||dist[x]130) break; for(auto i:edge[x]) if(dist[x]i.vdist[i.y]) q.erase(make_pair(dist[i.y],i.y)),dist[i.y]dist[x]i.v,q.insert(make_pair(dist[i.y],i.y)); } }Bellman-Flord它的加速版就是 Dijkstra。想写出它上面多加几次循环不中途退出即可。Floyd你想像你是暴力人让后不停地更新所有更新了次用了。codefor(int k1;kn;k) for(int i1;in;i) for(int j1;jn;j) if(f[i][k]130f[k][j]130) f[i][j]min(f[i][j],f[i][k]f[k][j]);此算法要好好记虽然暴力但后面有大用。SPFA用数组记录源点到有向图上任意一点距离其中源点到自身距离为 0到其他点距离为无穷大。将源点入队并重复以下步骤队首出队。遍历所有以队首为起点的有向边若则更新。如果点不在队列中则入队。若队列为空跳出循环否则执行1。实际上我们可以将其理解为。codevoid spfa(){ q.push(A),dist[A]1,b[A]true; while(!q.empty()){ uq.front(),q.pop(),b[u]false; for(int it[u];i;iedge[i].y){ vedge[i].x; if(dist[v]dist[u]*edge[i].z){ dist[v]dist[u]*edge[i].z; if(!b[v]) q.push(v),b[v]true; } } } }//引入自 https://www.luogu.com.cn/problem/P1576JohnsonDijkstra 的升级版可以计算任意两个点之间的距离。新建一个虚拟 0 号节点。在节点 0 至节点中插入一条权值为 0 的有向边。使用 Bellman-ford 算法SPFA 也可计算节点 0 到其它节点的最短路径顺便判断负环记为​。将原图每条边的权值改为。跑轮 Dijkstra 算法求出全源最短路。代码就不贴了。搜索这是毫无疑问的详见A star寻路算法-CSDN博客后记妈呀太多了你只要记得 Dijkstra、Floyd 和 SPFA 就差不多了。要题目的话可以去 luogu 找找。广告有兴趣可以进 MYIOI 出题组哦要标明备注。MYIOI 出题组 - 洛谷

相关新闻

DC-3靶机渗透测试

DC-3靶机渗透测试

2026/7/29 8:28:50

先对内网进行探活扫描 nmap -sn 192.168.207.0/24 dc-3的ip是192.168.207.131,进行端口扫描 nmap -sV -p- 192.168.207.131 开放了http服务,上浏览器访问http://192.168.207.131查看一下网站内容 有一个登录框,没有验证码,可以尝…

FactoryIO输送线汇流仿真与梯形图编程实践

FactoryIO输送线汇流仿真与梯形图编程实践

2026/7/29 8:18:50

1. 项目概述:FactoryIO输送线汇流仿真实验去年在给某自动化企业做技术培训时,我设计了一套基于FactoryIO的输送线仿真实验。这个项目最大的特点是用最基础的梯形图逻辑实现了复杂的物料汇流控制,现场调试一次通过率高达95%。不同于教科书式的…

Unity方向盘模拟开发:从输入处理到力反馈的完整实现指南

Unity方向盘模拟开发:从输入处理到力反馈的完整实现指南

2026/7/29 8:18:50

1. 项目概述:从方向盘到虚拟世界的桥梁在游戏开发,特别是赛车、驾驶模拟或工业仿真领域,方向盘交互的逼真度直接决定了用户体验的上限。一个物理方向盘,通过USB或蓝牙连接到电脑,其背后是复杂的轴、按钮和力反馈数据流…

基于Arduino与蓝牙BLE的自行车智能转向灯DIY全攻略

基于Arduino与蓝牙BLE的自行车智能转向灯DIY全攻略

2026/7/29 9:18:52

1. 项目概述:从“线”到“无线”的骑行安全进化 几年前,我给自己的通勤自行车装了一套转向灯,用的是最基础的Arduino Nano和几颗LED,走线麻烦不说,开关还得装在车把上,每次转弯前都得低头找按钮&#xff0c…

UE5蓝图入门实战:从零构建可交互门与拾取系统

UE5蓝图入门实战:从零构建可交互门与拾取系统

2026/7/29 9:18:52

1. 项目概述:从“蓝图”开始你的UE5创作之旅 如果你刚接触虚幻引擎5,面对C代码感到无从下手,却又想快速做出一个能跑、能跳、能交互的Demo,那么“蓝图”就是你最好的朋友。蓝图是UE5内置的视觉化脚本系统,它用节点和连…

Playwright混合编排测试实战:API与UI协同提升自动化效率

Playwright混合编排测试实战:API与UI协同提升自动化效率

2026/7/29 9:18:52

1. 项目概述:为什么我们需要混合编排测试?在自动化测试领域,我们常常面临一个经典的“割裂”困境:API测试和UI测试像是两个独立的王国,各自为政。API测试跑得快,稳定性高,但无法验证用户最终看到…

DirectX 3D图形开发:矩阵变换原理、实战与避坑指南

DirectX 3D图形开发:矩阵变换原理、实战与避坑指南

2026/7/29 9:18:52

1. 项目概述:从向量到矩阵,3D世界的数学基石如果你和我一样,是从《DirectX12 3D 游戏开发实战》这本书开始系统学习现代图形API,那么在啃完第一天的向量代数后,第二天迎面而来的“矩阵代数”可能会让你感到一丝压力。别…

反弹Shell技术与防火墙绕过实战解析

反弹Shell技术与防火墙绕过实战解析

2026/7/29 9:18:52

1. 反弹Shell技术基础解析 在渗透测试和Web安全领域,反弹Shell(Reverse Shell)是一种常见的后渗透技术手段。与传统的正向连接不同,反弹Shell的特点是让目标主机主动连接攻击者控制的服务器,这种方式能够有效绕过防火墙…

百度网盘直链解析:5分钟掌握高速下载的终极技巧

百度网盘直链解析:5分钟掌握高速下载的终极技巧

2026/7/29 9:08:52

百度网盘直链解析:5分钟掌握高速下载的终极技巧 【免费下载链接】baidu-wangpan-parse 获取百度网盘分享文件的下载地址 项目地址: https://gitcode.com/gh_mirrors/ba/baidu-wangpan-parse 还在为百度网盘限速而烦恼?百度网盘直链解析工具&#…

[具身智能-649]:个人电脑搭建 RTSP 服务完整方案(Windows / Ubuntu 双平台,适配 RDK X5 rtsp2display 调试)

[具身智能-649]:个人电脑搭建 RTSP 服务完整方案(Windows / Ubuntu 双平台,适配 RDK X5 rtsp2display 调试)

2026/7/28 13:30:18

目标:电脑作为RTSP 服务端,循环推送 H264/H265 视频流; RDK X5 通过 rtsp2display 拉流预览,完全不需要在开发板编译 live555。 提供两套成熟方案: ✅ 方案 A:FFmpeg(最简单,优先推…

PDF合并与动态水印的工程化方案:2026国内免费工具实测对比

PDF合并与动态水印的工程化方案:2026国内免费工具实测对比

2026/7/28 16:04:36

一、背景与测试方案 在实际项目交付中,PDF文件合并与版权保护水印的叠加是一个高频但容易被低估的技术需求。典型的处理链路涉及:多源PDF的文件流合并、页面级水印渲染(含透明度混合与图层叠加)、输出文件体积控制。看似简单的操作…

PDF拆分压完图糊了?2026国内免费实测,档案员都在用的组合方案

PDF拆分压完图糊了?2026国内免费实测,档案员都在用的组合方案

2026/7/28 16:04:35

说实话,提到PDF拆分再压缩,我真是被折腾得够呛。 上个月公司年度合同归档,一份300多页的PDF总合同,需要按年份拆分成三个独立文件,再分别压缩到10MB以内方便邮件发送各部门确认。我心想这还不简单?先找个海…

AI会议纪要怎么做?会议录音转文字加自动整理,三个月实测流程

AI会议纪要怎么做?会议录音转文字加自动整理,三个月实测流程

2026/7/29 0:08:23

打工人总是跑不掉要写会议纪要。 我在一家互联网公司,一周至少八场会:产品评审、数据复盘、项目同步、客户沟通,每场一小时起步。 以前的标准流程是开会拼命记→会后凭记忆补→整理成文档发群,结果经常记不全、记错、记串。 大概年…

重庆化龙桥老旧小区改造,怎么搞定夜景照明“不扰居”又能省成本?

重庆化龙桥老旧小区改造,怎么搞定夜景照明“不扰居”又能省成本?

2026/7/29 0:08:23

重庆化龙桥靠着嘉陵江,老小区多,最近几年城市更新做的勤,不少住户都反映过小区夜景亮了是好事,可有的灯太晃眼,半夜拉着窗帘都透光,睡不好觉。还有物业算账,这灯开一整晚,公摊电费蹭…

目标模糊、资源泛滥、进度失控,AI学习计划制定失败的3大隐形陷阱及救急方案

目标模糊、资源泛滥、进度失控,AI学习计划制定失败的3大隐形陷阱及救急方案

2026/7/29 0:08:23

更多请点击: https://codechina.net 第一章:目标模糊、资源泛滥、进度失控,AI学习计划制定失败的3大隐形陷阱及救急方案 目标模糊:学得越勤,离真实能力越远 当学习目标停留在“学会AI”或“搞懂大模型”这类宽泛表述…