107 Minimal Network

原题链接:https://projecteuler.net/problem=107

如下图所示的图,包含七个顶点,总权重是 243。

其最小生成子树如下。权重是 93,那么节省了 150。

题目给了一个很大的图,包含四十个顶点,使用邻接矩阵的方式表示,求最大节省了多少。

这个题目就是使用最小生成树算法。然后用总权重减去最小生成树的权总即可。

我的实现使用了 Robert Sedgewick 在 Algorithms 4th 的 4.3 小节描述的 Lazy Prim's algorithm。