贪心算法分发饼干Java
时间: 2023-12-02 19:41:33 浏览: 82
以下是使用贪心算法分发饼干的Java代码:
```java
import java.util.Arrays;
class Solution {
public int findContentChildren(int[] g, int[] s) {
Arrays.sort(g);
Arrays.sort(s);
int count = 0;
int j = g.length - 1;
for(int i = s.length - 1;i >= 0;i--){
while(j >= 0 && s[i] < g[j]){
j--;
}
if(j >= 0){
count++;
j--;
}
if(j < 0){
break;
}
}
return count;
}
}
```
该算法的核心思想是:每次将最小的饼干分配给胃口最小的孩子,这样可以使得更多的孩子得到满足。具体步骤如下:
1.将孩子和饼干按照大小排序,从大到小遍历饼干。
2.如果当前饼干可以满足当前孩子的胃口,就将该饼干分配给该孩子,并将计数器加1。
3.如果当前饼干不能满足当前孩子的胃口,就将该饼干留给下一个孩子。
4.重复步骤2和3,直到所有孩子都得到了满足或者所有饼干都被遍历完。
阅读全文