贪心算法总结篇

本文对贪心算法进行总结,按难易程度和题目类型归类。介绍了贪心理论基础,分析简单、中等、难题的特点及典型题目,如股票问题、区间问题等。还强调了周总结的重要性,指出贪心是重要算法思维,解题要明确局部与全局最优。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

文章转自代码随想录

贪心算法总结篇

我刚刚开始讲解贪心系列的时候就说了,贪心系列并不打算严格的从简单到困难这么个顺序来讲解。

因为贪心的简单题可能往往过于简单甚至感觉不到贪心,如果我连续几天讲解简单的贪心,估计录友们一定会不耐烦了,会感觉贪心有啥好学的。

但贪心的难题又真的有点难,所以我是简单困难交错着讲的,这样大家就感觉难度适中,而且贪心也没有什么框架和套路,所以对刷题顺序要求没有那么高。

但在贪心系列,我发的题目难度会整体呈现一个阶梯状上升,细心的录友们应该有所体会。

在刚刚讲过的回溯系列中,大家可以发现我是严格按照框架难度顺序循序渐进讲解的,和贪心又不一样,因为回溯法如果题目顺序没选好,刷题效果会非常差!

同样回溯系列也不允许简单困难交替着来,因为前后题目都是有因果关系的,相信跟着刷过回溯系列的录友们都会明白我的良苦用心,哈哈

每个系列都有每个系列的特点,我都会根据特点有所调整,大家看我每天的推送的题目,都不是随便找一个到就推送的,都是先有整体规划,然后反复斟酌具体题目的结果

那么在贪心总结篇里,我按难易程度以及题目类型大体归个类。

贪心大总结正式开始:

# 贪心理论基础

在贪心系列开篇词关于贪心算法,你该了解这些!

(opens new window)中,我们就讲解了大家对贪心的普遍疑惑。

  1. 贪心很简单,就是常识?

跟着一起刷题的录友们就会发现,贪心思路往往很巧妙,并不简单。

  1. 贪心有没有固定的套路?

贪心无套路,也没有框架之类的,需要多看多练培养感觉才能想到贪心的思路。

  1. 究竟什么题目是贪心呢?

Carl个人认为:如果找出局部最优并可以推出全局最优,就是贪心,如果局部最优都没找出来,就不是贪心,可能是单纯的模拟。(并不是权威解读,一家之辞哈)

但我们也不用过于强调什么题目是贪心,什么不是贪心,那就太学术了,毕竟学会解题就行了。

  1. 如何知道局部最优推出全局最优,有数学证明么?

在做贪心题的过程中,如果再来一个数据证明,其实没有必要,手动模拟一下,如果找不出反例,就试试贪心。面试中,代码写出来跑过测试用例即可,或者自己能自圆其说理由就行了

就像是 要用一下 1 + 1 = 2,没有必要再证明一下 1 + 1 究竟为什么等于 2。(例子极端了点,但是这个道理)

相信大家读完关于贪心算法,你该了解这些!

(opens new window),就对贪心有了一个基本的认识了。

# 贪心简单题

以下三道题目就是简单题,大家会发现贪心感觉就是常识。是的,如下三道题目,就是靠常识,但我都具体分析了局部最优是什么,全局最优是什么,贪心也要贪的有理有据!

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值