力扣入门题 第2586题 统计范围内的元音字符串数

📅 2026/8/16 8:47:21
力扣入门题 第2586题 统计范围内的元音字符串数
题目描述给你一个下标从0开始的字符串数组words和两个整数left和right。如果字符串以元音字母开头并且以元音字母结尾那么该字符串就是一个元音字符串其中元音字母是a,e,i,o,u。返回words[i]是元音字符串的数目其中i在闭区间[left, right]内。示例示例 1输入words [are,amy,u], left 0, right 2 输出2 解释 - are 是一个元音字符串因为它以 a 开头并以 e 结尾。 - amy 不是元音字符串因为它以 a 开头但以 y 结尾。 - u 是一个元音字符串因为它以 u 开头并以 u 结尾。 范围内的元音字符串数目是 2 。示例 2输入words [hey,aeo,mu,ooo,artro], left 1, right 4 输出3 解释 - aeo 是一个元音字符串因为它以 a 开头并以 o 结尾。 - mu 不是元音字符串因为它以 m 开头。 - ooo 是一个元音字符串因为它以 o 开头并以 o 结尾。 - artro 是一个元音字符串因为它以 a 开头并以 o 结尾。 范围内的元音字符串数目是 3 。提示1 words.length 10001 words[i].length 10words[i]仅由小写英文字母组成0 left right words.length解题思路本题是一道简单的字符串遍历题目。核心思路是定义一个集合或数组来存储元音字母。遍历下标从left到right包含两端的字符串。对于每个字符串检查其第一个字符和最后一个字符是否都在元音集合中。如果都满足则计数器加一。遍历结束后返回计数器的值。时间复杂度为 O(n)其中 n right - left 1空间复杂度为 O(1)。代码实现Pythonclass Solution: def vowelStrings(self, words: List[str], left: int, right: int) - int: sum 0 for i in words[left:right1]: if i[0] in aeiou and i[-1] in aeiou: sum 1 return sum总结力扣第2586题「统计范围内的元音字符串数」是一道考察基础字符串操作和集合使用的入门题目。解题关键在于正确理解元音字符串的定义并高效地遍历指定区间进行判断。掌握此类题目有助于巩固循环、条件判断和集合的基本用法。