题目链接
分发饼干
题目描述
注意点
- 1 <= g[i], s[j] <= 2^31 - 1
- 目标是满足尽可能多的孩子,并输出这个最大数值
解答思路
- 可以先将饼干和孩子的胃口都按升序进行排序,随后根据双指针 + 贪心,将当前满足孩子胃口的最小饼干分配给该孩子,最终能满足的孩子数量就是本题的结果
代码
class Solution {
public int findContentChildren(int[] g, int[] s) {
Arrays.sort(g);
Arrays.sort(s);
int idx1 = 0, idx2 = 0;
while (idx1 < g.length && idx2 < s.length) {
if (g[idx1] <= s[idx2]) {
idx1++;
}
idx2++;
}
return idx1;
}
}
关键点
- 双指针+贪心的思想