3541. Find Most Frequent Vowel and Consonant
题目简介
题目要求我们分别计算一个字符串 s 中母音字符与辅音字符出现最多的次数,并返回两者的次数之和
解题思路
我们用一个数组来保存 26 个字母,然后遍历一次 s 统计所有字母出现频率,最后再分别计算母音与字音出现频率最高的次数之和返回就好
Javascript
/**
* @param {string} s
* @return {number}
*/
var maxFreqSum = function(s) {
const countArr = new Array(26).fill(0)
const charCodeOfA = 'a'.charCodeAt()
const vowels = ['a', 'e', 'i', 'o', 'u']
let frequencyOfVowels = 0
let frequencyOfConsonant = 0
for(const c of s) {
countArr[c.charCodeAt() - charCodeOfA]++
}
vowels.forEach(v => {
const idx = v.charCodeAt() - charCodeOfA
frequencyOfVowels = Math.max(frequencyOfVowels, countArr[idx])
countArr[idx] = 0
})
frequencyOfConsonant = Math.max(...countArr)
return frequencyOfVowels + frequencyOfConsonant
};