455. Assign Cookies - LeetCode

Question

455. Assign Cookiesjava

Solution

題目大意:數組g的大小表示有幾個小孩,每一個元素表示小孩的食量,數組s的大小表示有多少個餅乾,每一個元素的大小表示每一個餅乾的大小,把餅乾分給小孩,每一個小孩只能分一個餅乾,問最多能知足多少個小孩.數組

思路:遍歷小孩,爲每一個小孩遍歷餅乾cookie

Java實現:優化

public int findContentChildren(int[] g, int[] s) {
    int ans = 0;
    Arrays.sort(s);
    for (int i = 0; i < g.length; i++) {
        for (int j = 0; j < s.length; j++) {
            if (g[i] <= s[j]) {
                s[j] = -1;
                ans ++;
                break;
            }
        }
    }
    return ans;
}

優化:先把小孩和餅乾排序,再遍歷code

public int findContentChildren(int[] g, int[] s) {
    Arrays.sort(g);
    Arrays.sort(s);
    int ans = 0;
    int i=0;
    int j=0;
    while (i<g.length && j < s.length) {
        if (g[i] <= s[j]) {
            s[j] = -1;
            ans ++;
            i++;
        }
        j++;
    }
    return ans;
}
相關文章
相關標籤/搜索