力扣网
1189.“气球”的最大数量
题目描述:给你一个字符串 text,你需要使用 text 中的字母来拼凑尽可能多的单词 “balloon”(气球)。
字符串 text 中的每个字母最多只能被使用一次。请你返回最多可以拼凑出多少个单词 “balloon”。
解题思路:
1.要求字符串中有多少个balloon,所以是取最小值
2.遍历字符串,将其拆分成单个字符因为
3.分解之后利用math.min方法判断需求字母的最小数目
4.因为l和o是两个字母才能凑一个单词,而返回的是单词数目,所以要除以2
class Solution {
public int maxNumberOfBalloons(String text) {
int []arr = new int[26];
for(char ch : text.toCharArray()){
++arr[ch - 97];
}
int min = arr[0];
min = Math.min(min,arr['b' - 97]);
min = Math.min(min,arr['a' - 97]);
min = Math.min(min,arr['l' - 97]/2);
min = Math.min(min,arr['o' - 97]/2);
min = Math.min(min,arr['n' - 97]);
return min;
}
}