455. 分发饼干 - 力扣(LeetCode) (leetcode-cn.com)https://leetcode-cn.com/problems/assign-cookies/
想清楚局部最优,想清楚全局最优,感觉局部最优是可以推出全局最优, 并想不出反例,那么就试⼀试贪⼼。同时,从代码中可以看到⽤了一个cookie来控制饼⼲数组的遍历,遍历饼⼲并没有再起⼀个for循环,⽽是采 ⽤⾃减的⽅式,这也是常⽤的技巧。 有的同学看到要遍历两个数组,就想到⽤两个for循环,那样逻辑其实就复杂了。
class Solution {
public int findContentChildren(int[] g, int[] s) {
Arrays.sort(g);
Arrays.sort(s);
int cookie = s.length - 1;//饼干数组索引
int result = 0;
for (int i = g.length - 1; i >= 0; i--) {
if (cookie >= 0 && g[i] <= s[cookie]){
result++;
cookie--;
}
}
return result;
}
}