贪心算法

贪心算法 是一类构造性 算法,它在求解最优化问题的过程中始终只做局部最优的选择 ,并且不在以后对已经做出的选择进行回溯或修改 。使用贪心算法需要证明局部最优解 等于全局最优解

贪心可以说是算法的基础,几乎所有算法都蕴含了贪心的思想。同时,贪心更多是一种思想而不是具体的算法,且常常与别的算法配合使用,但也有如反悔贪心这种易单独出现的较为固定的套路,实际训练中更多以多刷题总结经验为主,这里重点讲解一下反悔贪心。

知识点

  • 贪心算法不能保证对所有问题都得到全局最优,除非你只是用于骗分,否则必须进行验证
  • 在内容是无序的时候,我们常常会进行一下排序之后进行贪心
  • 思考贪心时往往先从直觉出发,然后通过反证法证明没有解法更优或者可以通过反悔贪心进行修正

反悔贪心

反悔贪心 (也称为可反悔的贪心、反悔贪心算法)是一种改进的贪心算法策略,它在传统贪心算法的基础上增加了"反悔"机制,从而在某些问题上能得到更优的解。核心思想是传统贪心算法每一步都做出当前最优选择,且不可更改 。而反悔贪心允许我们在后续步骤中撤销之前的选择,替换为更优的决策,从而修正可能产生的局部最优错误。

实际运用中通常将当前的最优解先当作全局最优解,且使用优先队列 记录做过的选择,当之后有更好的选择时,替换当前队列中最不优的操作。

相关推荐
一个爱编程的人1 小时前
图的相关概念
c++·算法·图论
星马梦缘1 小时前
死锁与进程资源分配问题的解法
算法·操作系统·深度优先·死锁
爱炼丹的James1 小时前
第四章 数学知识
算法
吃好睡好便好1 小时前
矩阵旋转的计算
学习·线性代数·算法·矩阵
埃菲尔铁塔_CV算法2 小时前
基于扩张卷积与双分支参数调控的低光照图像增强算法完整研究与工程解析
人工智能·神经网络·算法·机器学习·计算机视觉
迈巴赫车主2 小时前
优先队列(PriorityQueue)
数据结构·算法
hai3152475432 小时前
有规则的AI编制操作系统演进过程展示
人工智能·程序人生·算法·逻辑回归·创业创新
数据仓库搬砖人2 小时前
SHAP 详解:从博弈论原理到 XGBoost 实战
算法
老鱼说AI2 小时前
统计学习方法第七章:支持向量机精讲(超硬核长文深入预警!)
人工智能·深度学习·神经网络·算法·机器学习·支持向量机·学习方法