LeetCode每日一题: 1189. "气球"的最大数量

143 阅读1分钟

PK创意闹新春,我正在参加「春节创意投稿大赛」,详情请看:春节创意投稿大赛

image.png

class Solution {
    public int maxNumberOfBalloons(String text) {
        int[] dict = new int[5];
        for (int i = 0 ; i < text.length() ; i ++) {
            char ch = text.charAt(i);
            if (ch == 'b') {
                dict[0] ++;
            } else if (ch == 'a') {
                dict[1] ++;
            } else if (ch == 'l') {
                dict[2] ++;
            } else if (ch == 'o') {
                dict[3] ++;
            } else if (ch == 'n') {
                dict[4] ++;
            }
        }
        dict[2] /= 2;
        dict[3] /= 2;
        int minIndex = 0;
        for (int i = 0 ; i < dict.length ; i ++) {
            if (dict[i] < dict[minIndex]) {
                minIndex = i;
            }
        }
        return dict[minIndex];
    }
}

思路: hash, 将每个字符存在hash, 最后取出最小值即可; 注意: l/o 值需要除以二, 因为需求是两个l/o