455.分发饼干

解题思路:
我们要知道,饼干数决定喂饱的孩子的数,所以我们以饼干数做循环。 先将两个数组进行排序(sort),【贪心算法就是在每一步选择最优解,即最小的饼干要给满足度最小的孩子,才能达到最大化的价值】, 定义结果为res。 我们创建两个指针(i,j) i指向第一个孩子,j指向第一个饼干,出现的情况: 1.孩子的满足度大于饼干或者没有饼干了。说明i不能移动,没有孩子可以喂饱了。对res没有操作;(res= 0.i= 0) 2.孩子的满足度等于或者小于饼干。res自增,说明第i个孩子可以喂饱。 然后指针向后移动,i++;j++;res++ 在这个过程中,我们会发现能够喂饱的孩子数等于i,所以我们可以用res来代替i

作者:不懂语言的崽子
链接:https://leetcode.cn/problems/assign-cookies/solutions/2332760/jian-dan-si-lu-java-by-hua-kai-bu-bai-ca-b6zw/
来源:力扣(LeetCode)
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

class Solution {
    public int findContentChildren(int[] g, int[] s) {
        // 默认从小到大排列
        Arrays.sort(g);
        Arrays.sort(s);
        // int cookieIndex = 0;
        int childIndex = 0;
        for(int cookieIndex=0;cookieIndex<s.length;cookieIndex++){
            if(childIndex<g.length&&s[cookieIndex]>=g[childIndex]){
                childIndex++;
            }
        }
        return childIndex;
    }
}

转载参考:https://leetcode.cn/problems/assign-cookies/solutions/2332760/jian-dan-si-lu-java-by-hua-kai-bu-bai-ca-b6zw/

作者:静默虚空
欢迎任何形式的转载,但请务必注明出处。
限于本人水平,如果文章和代码有表述不当之处,还请不吝赐教。

posted @   Chenyi_li  阅读(2)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· .NET10 - 预览版1新功能体验(一)
点击右上角即可分享
微信分享提示