一、基本概念
所谓贪心算法是指,在对问题求解时,总是做出在当前看来是最好的选择。也就是说,不从整体最优上加以考虑,它所做出的仅仅是在某种意义上的局部最优解。注意:选择贪心策略必须具备无后效性。
二、贪心算法的求解步骤
- 创建数学模型来描述问题
- 把求解的问题分成若干个子问题
- 对每一子问题求解,得到子问题的局部最优解
- 把子问题的解合并成原来问题的一个解
三、贪心算法适用的问题
贪心策略适用的前提是:局部最优策略能导致产生全局最优解。
四、该算法存在的问题
- 不能保证求得的最后解是最佳的
- 不能用来求最大值或最小值的问题
- 只能求满足某些约束条件的可行解的范围
五、贪心算法在实际工作中的应用
• 图中的最小生成树算法
• 单源最短路径迪杰斯特拉算法