贪心算法

贪心算法

  • 贪心算法:
    • 在每一步选择中都采取当前状态下的最优决策局部最优)。
    • 并希望由此导致的最终结果是全局最优
  • 贪心算法与一般的搜索,以及动态规划相比,不同之处在于:它不对整个状态空间进行遍历或计算,而是始终按照局部最优选择执行下去,不再回头。
  • 因为这个特性,贪心算法不一定 能得到正确的结果,除非可以证明,按照适当的方法做出局部最优选择,依然可以得到全局最优结果。
  • 能用贪心算法求解的题目,也都可以用搜索或动态规划求解,但贪心算法一般是最高效的。
  • 遇到题目,先想搜索、动态规划等基于全局的解法,若时间复杂度太高,再考虑贪心。

LeetCode 练习题


相关推荐
QXWZ_IA8 小时前
1库1图1批是什么?千寻位置公安地图数据体系详解
科技·算法·能源·媒体·交通物流·政务
c238569 小时前
Bug 猎手入门指南
c++·算法·bug
Reart9 小时前
Leetcode 213.打家劫舍2(内含闲谈,打劫真是技术活,好题,716)
后端·算法
Reart10 小时前
Leetcode 198.打家劫舍(716)
后端·算法
Jerry10 小时前
LeetCode 110. 平衡二叉树
算法
玖玥拾10 小时前
C++ 数据结构 八大基础排序算法专题
数据结构·c++·算法·排序算法
Tim_1011 小时前
【C++】017、new/delete与malloc/free的区别
java·数据结构·算法
从零开始的代码生活_11 小时前
C++ list 原理与实践:双向链表、迭代器与简化实现
开发语言·c++·后端·学习·算法·链表·list
ttod_qzstudio12 小时前
【软考算法】软件设计师下午第四题之动态规划:0-1 背包与最长公共子序列的“填表艺术“
算法·动态规划·软考