455. 分发饼干
本题属于数组类的题目,主要考查排序算法。
分发饼干
-
题目分类,个人感觉这是一个数组类的题,考查了排序算法;
-
先对g和s进行从小到大的排序;
-
遍历g和s, 直到某一个被遍历完即结束;
-
这里有一个注意的地方就是如果s[j]比g[i]小的情况,只递增j的记号,主要考虑用例如下:
[5,6,7,8,9]
[1,2,5,6,7] -
结束返回cnt;
int cmp(const void *a, const void *b) {
return *(int *)a - *(int *)b;
}
int findContentChildren(int* g, int gSize, int* s, int sSize){
qsort(g, gSize,sizeof(g[0]),cmp);
qsort(s, sSize, sizeof(s[0]),cmp);
int i,j;
int cnt = 0;
i = 0;
j = 0;
while(i<gSize&& j<sSize) {
if(s[j]<g[i]) {
;//do nothing,
} else if(s[j]>=g[i]){
cnt++;
i++;
}
j++;
}
return cnt;
}

浙公网安备 33010602011771号