慎气 发表于 2025-9-26 11:04:04

【学习笔记】基础算法——生成树

最小生成树

应该都知道最小生成树是什么吧。
不知道的左转先理解最小生成树的定义!
好的上例题!
水。
两种做法,一个是 K 啥的,还有一个是 Prim 吧。
K 算法

时间复杂度 \(O(m\log m)\),瓶颈在于排序。
非常常用!代码很短!但是适用于稀疏图。
代码不贴了。
P 算法

时间复杂度应该是 \(O(n^2)\) 吧。
K 算法是加边,而 P 算法是加点。
很简单。适用于稠密图。但是并不很常用,因为一般 K 算法都是首选。
最小生成树的运用

我问你呢,有多少个题目会在脑袋上写着大大的“最小生成树”五个大字?不,不可能。都是藏着掖着的!
把“最小生成树”的提示藏在字里行间,需要你仔细剖析题目意思,详细分析题目要求才能发现。
运用很巧妙哇!
直说不好说啊。看几个题吧。
例题——Dungeons and Candies

乍一看,你看得出来这是最小生成树?不,当然看不出来。
它是藏着的!你需要去剖析,它的这个结构确实是一个树的形态,然后整个你需要自己去枚举,去连边,去造生成树。最后输出的时候还得遍历!
还是有难度的。
来,看一下代码:
#include#define LL long longusing namespace std;const int N = 1e3+5 , M = 2e6+5;struct line{int u,v,w;}ln;vector g;char c;int n,m,k,w,fa,cnt,ans,sum;bool cmp(line l1,line l2){return l1.w

靳谷雪 发表于 2025-10-19 01:05:28

这个有用。

致掣 发表于 2025-10-21 01:38:03

感谢分享,学习下。

姨番单 发表于 2025-11-3 03:08:29

感谢,下载保存了

求几少 发表于 2025-11-7 06:41:23

这个有用。

姘轻拎 发表于 2025-11-9 21:19:02

前排留名,哈哈哈

澹台忆然 发表于 2025-12-10 21:54:13

感谢分享,学习下。

钦娅芬 发表于 2026-1-21 05:56:10

过来提前占个楼

懵诬哇 发表于 2026-1-22 09:40:42

分享、互助 让互联网精神温暖你我

蔡如风 发表于 2026-1-23 10:15:25

过来提前占个楼

赴忽 发表于 2026-1-24 11:02:44

新版吗?好像是停更了吧。

连热 发表于 2026-1-27 04:44:26

谢谢分享,辛苦了

祝娜娜 发表于 2026-1-30 03:01:22

感谢发布原创作品,程序园因你更精彩

株兆凝 发表于 2026-2-2 04:10:53

懂技术并乐意极积无私分享的人越来越少。珍惜

赘暨逢 发表于 2026-2-3 07:57:38

这个有用。

司寇涵涵 发表于 2026-2-3 08:49:05

懂技术并乐意极积无私分享的人越来越少。珍惜

喝岖 发表于 2026-2-6 04:12:54

收藏一下   不知道什么时候能用到

怃膝镁 发表于 2026-2-8 04:00:22

收藏一下   不知道什么时候能用到

慷规扣 发表于 2026-2-9 01:43:55

分享、互助 让互联网精神温暖你我

全阳霁 发表于 2026-2-10 08:59:25

很好很强大我过来先占个楼 待编辑
页: [1] 2
查看完整版本: 【学习笔记】基础算法——生成树