5 贪心算法
- 贪心算法采取步步逼近的方式构造问题的解,其下一步的选择总是在当前看来收效最快和效果最明显的那一个。
5.1 最小生成树
- 性质1:移除环中的任意一条边不会破坏图的连通。
- 性质2:具有n各节点的树的边数为n-1。
- 性质3:任何一个连通无向图G=(V,E),若满足|E|=|V|-1,则其为树。
- 性质4:一个无向图是树,当且仅当在其任意两个节点间仅存在唯一路径。
- 最小生成树:无向图的一个连通无环子图,且总权重最小。
5.1.1 一个贪心方法
- Kruskal最小生成树算法:
- 起始于一个空图
- 不断从E中选择边:
- 不断重复地选择未被选中的边中权重最轻且不会形成环的一条
5.1.2 分割性质
- 分割性质:
设边集X是G=(V,E)的某个最小生成树的一部分。选定任一节点集合S⊂V,使得X中没有跨越S