您当前的位置:首页 > 计算机 > 编程开发 > 数据结构与算法

分饼干算法

时间:12-14来源:作者:点击数:

老师分饼干,每个孩子只能得到一块饼干,但每个孩子想要的饼干大小不尽相同。

目标是尽量让更多的孩子满意。 如孩子的要求是 1, 3, 5, 4, 2,饼干是1, 1,最多能让1个孩子满足。如孩子的要求是 10, 9, 8, 7, 6,饼干是7, 6, 5,最多能让2个孩子满足

function findContentChildren(children, cookies) {
  children.sort((a, b) => a - b); // 将孩子的要求从小到大排序
  cookies.sort((a, b) => a - b); // 将饼干的大小从小到大排序
  let satisfied = 0;
  let i = 0; // 孩子的索引
  let j = 0; // 饼干的索引
  while (i < children.length && j < cookies.length) {
    if (children[i] <= cookies[j]) { // 如果当前饼干能满足当前孩子的要求
      satisfied++;
      i++;
      j++;
    } else { // 如果当前饼干不能满足当前孩子的要求,则继续尝试下一个饼干
      j++;
    }
  }
  return satisfied;
}
方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门
本栏推荐