欢迎光临散文网 会员登陆 & 注册

贪心算法

2023-07-11 20:08 作者:Poyo_a  | 我要投稿

一、什么是贪心?

  贪心就是 局部最优最后达到全局最优

【例子】:一堆钞票,可以拿走10张。我想拿最多的钱,怎么拿?

   每一次都拿面额最大的,最后我就拿走最多的钱了。

  1.1 换成贪心的说法:

        每一次都拿局部最优的,最后我就拿走全局最优了。

二、例题

        Leetcode 455 easy

2.1:题目拆解:

   有4个参数

2.2 我的思路:

     通过排序,把大尺寸的喂给胃口大的,最后达到足够多的人满足。

2.3题解思路:

    首先满足胃口大的孩子。把大尺寸的饼干交给胃口大的孩子。然后后面就是喂饱其他孩子,这样最后达到 有足够多的满足孩子


2.4代码实现

        2.4.1Goals

               1 . 对两个数组进行排序

             利用sort 函数来实现从小到大排序。

               2.选出最大尺寸和胃口。

                   利用两个size()-1这就减小了使用两次for变成使用一次

技术总结: 

           1.    这道题目考察的是贪心算法,就是先把大胃口的先拿走,剩下的依次满足就可以了。

              2.看到两个数组,我之前想到两个for循环来比较。其实用两个长度存放,可以来操作数组进行比较了。

            3.可以想成怎么装更多的东西,那可不就是把最大的装了。


Leetcod


贪心算法的评论 (共 条)

分享到微博请遵守国家法律