图论
文章平均质量分 79
麦烤楽鸡翅
一个彩笔
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
旅游(牛客)
本文讨论了如何解决一个带预算限制的最小生成树问题。题目描述有n个城市和m条双向道路,每条道路有一个损坏值。国家会免费修复损坏值≤p的道路,需要找到最小的p值使得牛牛在预算c内能修复剩余道路使所有城市连通。解题关键在于:1)使用Kruskal算法构建最小生成树;2)按损坏值从小到大计算修复成本;3)通过反向遍历找到临界p值,使得国家免费修复部分道路后总成本≤c。文章提供了C++、Python和Java三种实现方案,并分析了算法复杂度为O(mlogm)。原创 2025-11-19 22:59:33 · 1997 阅读 · 0 评论 -
全网最细Kruskal算法详解(大佬勿入orz)
本文介绍了Kruskal算法求最小生成树的原理与实现。最小生成树是指连通图中边权和最小的n-1条边构成的子图。Kruskal算法通过贪心策略,按边权从小到大依次选择不构成回路的边,使用并查集判断连通性。文中给出了完整的C++代码实现,包括并查集操作和边的存储排序。算法时间复杂度取决于排序步骤,总体效率较高。文章还推荐了相关练习题,帮助读者巩固该算法的应用。原创 2025-03-06 20:31:17 · 554 阅读 · 0 评论 -
最小生成树之Prim算法(详细图解)
本文介绍了Prim算法在最小生成树问题中的应用。Prim是一种基于顶点的贪心算法,适用于稠密图,通过逐步选择最近顶点构建最小生成树。文章详细解析了算法原理,并提供了代码实现示例。最后推荐了三道练习题目(洛谷P3366、P1967、P1991),从模板题到实际应用,帮助读者深入理解最小生成树概念和Prim算法的使用。代码部分展示了如何初始化图、更新距离以及计算最小权值和的关键步骤。原创 2025-03-06 21:55:00 · 2295 阅读 · 0 评论 -
链式前向星(大佬勿入orz)
本文介绍了链式前向星的数据结构实现方法。首先解释前向星是一种按起点排序的边集数组,链式前向星在此基础上用链表形式存储边。文章给出了完整的C++代码实现,包括边的结构体定义、添加边的函数以及主程序示例。通过示例输入演示了边的存储过程,详细说明了head数组和next指针的更新机制。最后作者鼓励读者手动模拟理解,并附上个人署名和互动请求。原创 2024-12-08 17:46:31 · 452 阅读 · 0 评论 -
全网嘴粗迪杰斯特拉(Dijkstra)算法详解
摘要:本文介绍了迪杰斯特拉算法,它是一种解决带权图单源最短路径问题的贪心算法,采用类似广度优先搜索的方法。文章详细解释了算法核心思想:选择未访问且距离最短的点,并更新其邻近点距离。同时指出其局限性:不能处理负权边,只能解决单源问题。文中提供了C++实现代码,包含详细注释,使用优先队列优化。最后分享学习心得,建议通过实践理解算法,并提供了进阶练习题。文风活泼,包含大量emoji表情和网络用语,如"哈基米"、"蒟蒻"等。原创 2025-03-08 21:28:31 · 544 阅读 · 0 评论
分享