目录

贪心算法(7)(java) 分发饼干

题目:假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。

对每个孩子i,都有一个胃口值g[i],这是能让孩子们满足胃口的饼干的最小尺寸;并且每块饼干j,都有一个尺寸 s[j] 。如果 s [j] >= g[i],我们可以将这个饼干了分配给孩子i,这个孩子会得到满足。你的目标是尽可能满足越多数量的孩子,并输出这个最大数值。

贪心策略:

排序,针对当前胃口最小的孩子,然后挑选饼干;

1.能满足,直接喂;

2.不能满足,直接删掉这个饼干;

java 复制代码
import java.util.Arrays;

public class Solution {
    public int findContentChild(int[] g, int[] s) {
        Arrays.sort(g);//将孩子们的胃口从小到大排序
        Arrays.sort(s);//将饼干尺寸从小到大排序
        //排序
        int ret = 0, m = g.length, n = s.length;
        for (int i = 0, j = 0; i < m && j < n; i++, j++) {//双指针,i遍历孩子,j遍历饼干
            while (j < n && s[j] < g[j]) j++;
            if (j < n) ret++;
        }
        return ret;
    }

    public static void main(String[] args) {
        Solution solution=new Solution();
        int[] g1={1,2};
        int[] s1={1,2,3};
        System.out.println(solution.findContentChild(g1,s1));

    }
}
本文是转载文章,点击查看原文
如有侵权,请联系 xyy@jishuzhan.net 删除
相关推荐
ylfhpy1 小时前
Java面试黄金宝典1
java·开发语言·算法·面试·职场和发展
这个懒人1 小时前
SB重删算法详解:原理、架构与实现
c++·算法·哈希算法
紫雾凌寒2 小时前
自然语言处理|Top-K 采样如何解锁文本生成的多样性?
人工智能·深度学习·自然语言处理·贪心算法·top-k·采样原理·随机采样
Cachel wood2 小时前
Mysql相关知识:存储引擎、sql执行流程、索引失效
android·人工智能·sql·mysql·算法·前端框架·ab测试
wen__xvn2 小时前
每日一题洛谷P1106 删数问题c++
开发语言·c++·算法
_GR3 小时前
2020年蓝桥杯第十一届C&C++大学B组(第二次)真题及代码
c语言·数据结构·c++·算法·蓝桥杯
SomeB1oody3 小时前
【Python机器学习】3.2. 决策树理论(进阶):ID3算法、信息熵原理、信息增益
python·算法·决策树·机器学习
维齐洛波奇特利(male)3 小时前
(暴力枚举 水题 长度为3的不同回文子序列)leetcode 1930
算法·leetcode·职场和发展
每次的天空3 小时前
Android第四次面试总结(基础算法篇)
android·算法·面试
知舟不叙3 小时前
机器学习——深入浅出理解朴素贝叶斯算法
人工智能·python·算法·机器学习