贪心(Greedy)
- 总是做出在当前看来是最好的选择
不从整体考虑,只考虑眼前,得到 局部最优解
- 局部最优解和全局最优解
要保证最终得到的是全局最优解,贪心策略必须具备 无后效性
具体实现框架
// 从问题的某一初始解出发;
while (能朝给定总目标前进一步){
利用可行的决策,求出可行解的一个解元素;
}
// 由所有解元素组合成问题的一个可行解;
适用场景
- 用贪心算法直接求解全局最优,条件比较苛刻
- 哈夫曼(Huffman)编码
不从整体考虑,只考虑眼前,得到 局部最优解
要保证最终得到的是全局最优解,贪心策略必须具备 无后效性
// 从问题的某一初始解出发;
while (能朝给定总目标前进一步){
利用可行的决策,求出可行解的一个解元素;
}
// 由所有解元素组合成问题的一个可行解;