【Leetcode 1189 】 “气球” 的最大数量 —— 数组模拟哈希表

64 阅读1分钟

给你一个字符串 text,你需要使用 text 中的字母来拼凑尽可能多的单词 "balloon"(气球)

字符串 text 中的每个字母最多只能被使用一次。请你返回最多可以拼凑出多少个单词 "balloon"

示例 1:

输入: text = "nlaebolko"
输出: 1

示例 2:

输入: text = "loonbalxballpoon"
输出: 2

示例 3:

输入: text = "leetcode"
输出: 0

数组模拟哈希表

//数组模拟哈希表
function maxNumberOfBalloons(text: string): number {
  const list: number[] = Array(5).fill(0);
  for (const char of text) {
    switch (char) {
      case "b":
        list[0]++;
        break;
      case "a":
        list[1]++;
        break;
      case "l":
        list[2]++;
        break;
      case "o":
        list[3]++;
        break;
      case "n":
        list[4]++;
        break;

      default:
        break;
    }
  }
  list[2] = Math.floor(list[2] / 2);
  list[3] = Math.floor(list[3] / 2);
  return Math.min(...list);
}