力扣:455. 分发饼干

贪心解法思路:

1.先把两个数组按顺序遍历好,之后用最大的饼干来喂最大的胃口,如果最大的饼干不能喂饱最大的胃口,就除去这个最大的胃口,在剩下的为胃口中找最大的胃口来进行比对。这题主要历用了通过局部的优解,来进行全局的推导,推导出全部的答案。 

class Solution {
    public int findContentChildren(int[] g, int[] s) {
        //计数的变量
        int sum=0;
        //排列胃口数组
     Arrays.sort(g);
     //排列饼干数组
     Arrays.sort(s);
     //饼干数组的下标
     int zhi=s.length-1;
     //用for循环来进行遍历胃口数组
     for(int i=g.length-1;i>=0;i--){
         //同时来进行饼干数组的遍历来把最大的饼干喂给最大的胃口
         if(zhi>=0&&s[zhi]>=g[i]){
             //饼干能喂饱,就从剩下的饼干中找最大的饼干来为剩下的最大胃口。
             zhi--;
             //计数加一
             sum++;
         }
     }
     return sum;
    }
}

你可能感兴趣的:(贪心,leetcode,算法,java)