分饼干问题
1、题目描述
假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。
对每个孩子 i ,都有一个胃口值 gi ,这是能让孩子们满足胃口的饼干的最小尺寸;并且每块饼干 j ,
都有一个尺寸 sj 。如果 sj >= gi ,我们可以将这个饼干 j 分配给孩子 i ,这个孩子会得到满足。
你的目标是尽可能满足越多数量的孩子,并输出这个最大数值。
注意事项:你可以假设胃口值为正。一个小朋友最多只能拥有一块饼干。
2. 算法分析:
1. 使用贪心算法
2. 贪心策略:尽量将大的饼干分配给胃口大的孩子
function main(){ //胃口值数组 let g = {5, 10, 2, 9, 15, 9}; //饼干尺寸值数组 let s = {6, 1, 20, 3, 8}; let max = getMax(g, s); console.log('max: ', max); } function getMax(g,s){ //两个数组都从小到大排序 g.sort(); s.sort(); //代表第几个孩子得到满足 let child = 0, //代表当前是第几个饼干 cookie = 0; //当孩子的胃口被满足,孩子的索引加1,无论孩子的胃口是否被满足,饼干的索引都加1 //如此一直用后面的大饼干来满足当前孩子的胃口 while(child < g.length && cookie < s.length){ if(g[child] <= s[cookie]){ child++; } cookie++; } //满足胃口的孩子数量,即为最大值 return child; }
参考:https://www.cnblogs.com/BaoZiY/p/10861390.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
2017-05-07 javascript垃圾回收
2017-05-07 javascript作用域链理解
2017-05-07 http状态码