LeetCode455☞分发饼干

关联LeetCode题号455

本题特点
  • 贪心算法
  • 通过局部解,推导出最优解,并且没有反例
本题思路
  1. 先排序很重要,因为这样就知道,已经使用过的饼干 肯定是不满足小朋友的胃口的
python 复制代码
class Solution:
    def findContentChildren(self, g: List[int], s: List[int]) -> int:
        g.sort()
        s.sort()
        start, count = len(s) - 1, 0
        for index in range(len(g) - 1, -1, -1): # 先喂饱大胃口
            if start >= 0 and g[index] <= s[start]: 
                start -= 1
                count += 1
        return count
# 使用两个变量 一重循环 控制两个数组的值的比较

两年后的想法:先满足最小的胃口

双循环不可以:是因为一块饼干给了一个人 就不能给第二个人,一个人也不能吃两块饼干

想用一个变量控制两个数组 不可以:饼干和孩子两个数组循环变化的节奏不一致

java 复制代码
class Solution:
    def findContentChildren(self, g: List[int], s: List[int]) -> int:
        count = 0
        g.sort()
        s.sort()
        i = 0
        j = 0
        while i <= len(g)-1 and j <= len(s) -1:
            if g[i] <= s[j]:
                count += 1
                i += 1
                j += 1
            else:
                j += 1
        return count
相关推荐
承渊政道3 分钟前
【Python编程—从入门到实践】(让程序记得、恢复并解释失败:Python 文件、异常与JSON系统教程)
开发语言·python·pycharm·json·异常处理
aqiu11111110 分钟前
【C++算法打怪专栏】LeetCode 1. 两数之和(哈希表解法总结)
c++·算法·leetcode
郭庆汝17 分钟前
(六)MCP+A2A之——Playwright与BrowserUse:让AI学会像人类一样使用浏览器
开发语言·python
楚识科技19 分钟前
票据 OCR 识别技术深度解析:从算法原理到企业级落地实现
算法·ocr
longlongzihan21 分钟前
LeetCode 25. K 个一组翻转链表 (迭代+分组反转法)
算法·leetcode·链表
xuxigifxfh21 分钟前
牛客:BISHI8 大整数哈希
java·算法·哈希算法
Yolanda_202222 分钟前
26.网络模型的保存与读取
人工智能·pytorch·python
涉密IT资质笔记24 分钟前
涉密资质投入产出分析模型:时间成本、四块成本构成与 ROI 决策框架
java·开发语言·算法
木井巳26 分钟前
【BFS 解决拓扑排序】火星词典
java·算法·leetcode·广度优先·宽度优先·图搜索算法
北风toto37 分钟前
KMP 算法详解:从暴力匹配到 O(n+m) 的字符串搜索
java·开发语言·算法