文巾解题455. 分发饼干
Posted UQI-LIUWJ
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了文巾解题455. 分发饼干相关的知识,希望对你有一定的参考价值。
1 题目描述
2 解题思路:贪心
为了尽可能满足最多数量的孩子,从贪心的角度考虑,应该按照孩子的胃口从小到大的顺序依次满足每个孩子,且对于每个孩子,应该选择可以满足这个孩子的胃口且尺寸最小的饼干。
贪心算法是需要证明正确性的,这里直接搬leetcode的证明了
(证明的思路就是我们贪心得到的结果的数量,和最优解的数量是一致的)
跟着思路来,有:
class Solution:
def findContentChildren(self, g: List[int], s: List[int]) -> int:
g.sort()
s.sort()
num=0
lg=len(g)
ls=len(s)
ig=0
i_s=0
while(ig<lg and i_s<ls):
if(g[ig]<=s[i_s]):
num+=1
ig+=1
i_s+=1
elif(g[ig]>s[i_s]):
i_s+=1
return(num)
以上是关于文巾解题455. 分发饼干的主要内容,如果未能解决你的问题,请参考以下文章
LeetCode810. 黑板异或游戏/455. 分发饼干/剑指Offer 53 - I. 在排序数组中查找数字 I/53 - II. 0~n-1中缺失的数字/54. 二叉搜索树的第k大节点(代码片段