尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
图论的小技巧和易错点
Part 0 题目在解题前需要先明确题目的图的模型边题目中的边代表什么给定的是点权还是边权如果是点权应该如何转为边权边是有向边还是无向边图图是简单图吗是否存在重边或自环存在重边或自环时应该如何处理或者它是一棵树规模题目是否给出了顶点数n nn和边数m mm还是需要手工计算n nn和m mmPart 1 建图Part 1.1 邻接表为什么要使用邻接表存图而不是其他方式存入的是代表是否两点连通的01还是边权Part 1.2 邻接矩阵作者不常用所以没有总结出太多的易错点和技巧……Part 1.3 链式前向星边是否无向如果是存边的数组大小是否达到了2 × N 2 \times N2×N边的编号是从0 00开始还是1 112 22开始注意边双连通分量的建图必须从2 22开始。Part 2 最短路FloydFloyd 算法一般使用「邻接矩阵」进行存图。Floyd 的最外层k为什么必须放在最外层解释Floyd 算法的主要思想是动态规划其状态转移方程为d i s i , j min ⁡ ( d i s i , j , d i s i , k d i s k , j ) dis_{i,j} \min(dis_{i,j},\; dis_{i,k} dis_{k,j})disi,j​min(disi,j​,disi,k​disk,j​)最短路场景或在传递闭包场景中的d i s i , j d i s i , k ∧ d i s k , j dis_{i,j} dis_{i,k} \land dis_{k,j}disi,j​disi,k​∧disk,j​算法必须保证在计算d i s i , j dis_{i,j}disi,j​时所有以1 11到k − 1 k-1k−1为中间点的最短路径或传递关系都已计算。若将k kk放入内层循环可能在更新d i s i , j dis_{i,j}disi,j​时所需的d i s i , k dis_{i,k}disi,k​或d i s k , j dis_{k,j}disk,j​未被正确计算或未计算导致结果错误。Floyd 算法可以计算每个节点恰好或至多经过k kk步可达的点集。恰好 k 步初始可达数组d i s disdis的k kk次方至多 k 步为每个节点i ii增加一条自环即d i s i , i 1 dis_{i,i} 1disi,i​1再进行k kk次方。SPFA小心出题人卡 SPFASPFA 在某些特殊构造的数据下可能退化为O ( N × M ) O(N \times M)O(N×M)的时间复杂度。Dijkstra适用条件用于无负权边的图。使用前应明确求的是单源最短路还是多源最短路每个点的初值是否足够大源头节点的初值是0 00或是x xx边权的含义。版本朴素版本适用于稠密图。堆优化版本适用于大多数图。过程更新边权的时候可以直接更新吗还是像旅行巴士一样有一些限制。Part 3 其他其他内容敬请期待…
RELATED

相关推荐

Python异常处理:从语法到可观察系统工程

Python异常处理:从语法到可观察系统工程

1. 项目概述:为什么Python异常处理不是“加个try就行”的事在Python项目里写try...except,就像做饭时随手拧开盐罐撒一把——看起来简单,做出来却可能咸得发苦,或者淡而无味。我带过十几支开发团队,看过上千份PR代码&a…

📅 2026/9/8 14:27:47
零基础在VMware虚拟机安装Kali Linux:从下载到配置完整指南

零基础在VMware虚拟机安装Kali Linux:从下载到配置完整指南

1. 项目概述:为什么选择在虚拟机中安装Kali Linux? 如果你对网络安全、渗透测试或者Linux系统感兴趣,那么Kali Linux这个名字你一定不陌生。它不是一个普通的Linux发行版,而是一个由Offensive Security团队维护的、集成了数百种安…

📅 2026/9/12 2:28:55
IK 分词器 vs ES 内置分词器:中文搜索场景下的5项性能与效果对比

IK 分词器 vs ES 内置分词器:中文搜索场景下的5项性能与效果对比

IK 分词器 vs ES 内置分词器:中文搜索场景下的5项核心性能对比当我们需要在Elasticsearch中处理中文文本时,选择合适的分词器至关重要。本文将深入对比IK分词器与Elasticsearch内置分词器(standard、cjk、ngram)在中文处理上的差异…

📅 2026/8/24 8:25:12
MORE NEWS

更多资讯

📰

Folia歌曲不可用怎么办:版权与地域限制下的替代方案

Folia歌曲不可用怎么办:版权与地域限制下的替代方案 【免费下载链接】folia-major 专注于绚丽的歌词动画效果的本地音乐/navidrome/第三方多平台在线音乐播放器 项目地址: https://gitcode.com/GitHub_Trending/fo/folia-major Folia 是一款专注于绚丽歌词动…

📰

Microduck RL轮滑训练:带被动轮的速度跟踪任务从0到1

Microduck RL轮滑训练:带被动轮的速度跟踪任务从0到1 【免费下载链接】microduck_rl RL training environments for Microduck (mjlab) 项目地址: https://gitcode.com/GitHub_Trending/mi/microduck_rl Microduck RL 是基于 mjlab(MuJoCo Warp …

📰

SolidWorks 2020安装与稳定部署实战指南

1. 为什么SolidWorks 2020至今仍是机械设计一线的“稳态选择”我在长三角一家做非标自动化设备的公司干了八年,从助理工程师做到技术主管,经手过SolidWorks 2014、2016、2018、2020、2022五个大版本。去年客户临时要求复现一套十年前的老图纸&#xff0c…

📰

OpenCloud 内置日志库 Logrus 1.10.2 变更日志深度解析:结构化日志的演进、性能优化与集成实践

OpenCloud 内置日志库 Logrus 1.10.2 变更日志深度解析:结构化日志的演进、性能优化与集成实践 【免费下载链接】opencloud 🌤️ OpenCloud is the open source platform for file management, sharing and collaboration. Simple and sovereign. 项目…

📰

postgres_lsp 规则详解:preferBigInt——用 BIGINT 规避整数溢出与迁移风险

postgres_lsp 规则详解:preferBigInt——用 BIGINT 规避整数溢出与迁移风险 【免费下载链接】postgres_lsp A Language Server for Postgres 项目地址: https://gitcode.com/GitHub_Trending/po/postgres_lsp 导读 preferBigInt 是 postgres_lsp 项目中 lin…

📰

Unity实时画面采集与RTMP推流实战:RenderTexture+FFmpeg方案详解

搞过Unity实时画面采集的人应该都有同感:引擎自带的Camera输出到屏幕容易,但一旦涉及“把画面送到外部去”,比如录制成文件、推成直播流,能查到的完整资料就少得可怜。Unity官方对录屏、推流这块基本处于“你自己看着办”的状态&a…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬