Kruskal 和暴力必须一致

Kruskal 写好了,补全暴力枚举 brute_mst,在同一组边上各求一次最小总长。输出三样:Kruskal 的答案 / 暴力的答案 / 是否相同(相同输出 结果一致,否则 结果不一致)。 (本题用 g++ -std=c++17 -O0

开始练习 →

Prim 的做法

第 1 步:树从 0 号开始长 第 2 步:挨着树最短的:0-2 第 3 步:再挑 0-1 第 4 步:再挑 1-3 第 5 步:最后 3-4 第 6 步:始终是连着的一棵树 0 1 3 2 4 2 1 3 9 1 Prim 求最小生成树的

开始练习 →

Prim 和 Kruskal 差在哪(C++)

Prim 和 Kruskal 的区别是【0】(前一个说 Prim,后一个说 Kruskal)。

开始练习 →

Prim 从 0 出发的总长

同一组边,这次用 Prim,从 0 号点开始长。运行下面这段程序: #include <algorithm> #include <iostream> #include <queue> #include &

开始练习 →

Prim 按什么顺序加边

看 Prim 从 0 出发时,四条边是按什么顺序加进来的: #include <algorithm> #include <iostream> #include <queue> #include <s

开始练习 →

写一个 Prim

补全 prim:用小根堆存「从树里连出去的边」,每次弹最短的一条,另一端还没进树才要。输出最小总长。 (本题用 g++ -std=c++17 -O0 编译。)

开始练习 →

输出 Prim 的加边顺序

补全 edges_str:把一组边按顺序写成 a-b,边之间用 / 隔开。输出 Prim 从 0 出发的加边顺序。 (本题用 g++ -std=c++17 -O0 编译。)

开始练习 →

换个起点结果一样吗

用同一个 prim,分别从 0 号和 4 号出发各长一棵树。补全 same_set,输出三样:从 0 的总长 / 从 4 的总长 / 两棵树的边集是否相同(相同输出 结果一致,否则 结果不一致)。 (本题用 g++ -std=c++17 -

开始练习 →

第二条边就分道扬镳

Prim 和比较边集的函数都写好了,补全 kruskal 的选边循环。输出三样:Kruskal 选的第二条边 / Prim(从 0 出发)加的第二条边 / 两者的边集是否相同(写成 a-b;相同输出 结果一致)。 (本题用 g++ -std

开始练习 →

导航和联网怎么分

第 1 步:从 0 到 4 有两条路 第 2 步:两段那条:1 + 9 第 3 步:三段那条:2 + 3 + 1 第 4 步:段数多,反而更近 0 1 3 2 4 2 1 3 9 1 拿到一个实际问题,判断该用最短路还是 MST,看【0】。

开始练习 →