图论————最短路,最小生成树。

最短路:

  Dijkstra:每次拓展当前未拓展的最近点 X,因为 X 不可能被再次更新,适用于正权图,适用于单源最短路问题。

       它是以起点为中心,向外层层扩展。把遍历过的边放在一个集合里,每次扩展到集合中每个点的路程最短的点,把这个点放入集合,更新集合外其他点到该点的距离。  

 

  Floyd O(N 3 ):多源最短路。(经典的动态dp算法,我潜意识里认为它是搜索的)。

  Spfa O(K*E):可以处理负边的情况的単源最短路。

        它用了一个队列表示待优化的点,每次取出队首优化它的联通点,如果被他优化的点不在队中就入队等待优化。

        为什么可以处理负边那?(当然这也不算是处理负边,最多算是判断负边)只需要记录每个点入队的次数,如果有点入队超过N次,则存在负边。

  Bellman-Ford:不说也罢。

 

最短路:

http://www.cnblogs.com/b这个博客写的很好。

 

  

  

posted @   浪矢-CL  阅读(207)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
· 【译】Visual Studio 中新的强大生产力特性
· 2025年我用 Compose 写了一个 Todo App
点击右上角即可分享
微信分享提示