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
相关推荐
Java后端的Ai之路19 小时前
【Python 教程15】-Python和Web
python
冬奇Lab21 小时前
一天一个开源项目(第15篇):MapToPoster - 用代码将城市地图转换为精美的海报设计
python·开源
那个村的李富贵1 天前
CANN加速下的AIGC“即时翻译”:AI语音克隆与实时变声实战
人工智能·算法·aigc·cann
二十雨辰1 天前
[python]-AI大模型
开发语言·人工智能·python
power 雀儿1 天前
Scaled Dot-Product Attention 分数计算 C++
算法
Yvonne爱编码1 天前
JAVA数据结构 DAY6-栈和队列
java·开发语言·数据结构·python
琹箐1 天前
最大堆和最小堆 实现思路
java·开发语言·算法
前端摸鱼匠1 天前
YOLOv8 环境配置全攻略:Python、PyTorch 与 CUDA 的和谐共生
人工智能·pytorch·python·yolo·目标检测
renhongxia11 天前
如何基于知识图谱进行故障原因、事故原因推理,需要用到哪些算法
人工智能·深度学习·算法·机器学习·自然语言处理·transformer·知识图谱
坚持就完事了1 天前
数据结构之树(Java实现)
java·算法