日拱一卒(17)——leetcode学习记录:定长字符串中元音字符的数量

一、题目

给你字符串 s 和整数 k

请返回字符串 s 中长度为 k 的单个子字符串中可能包含的最大元音字母数。

英文中的 元音字母 为(a, e, i, o, u)。

示例 1:

复制代码
输入:s = "abciiidef", k = 3
输出:3
解释:子字符串 "iii" 包含 3 个元音字母。

二、思路

统计前k个字符中元音的数量,然后往后滑动,增加的一个新的,剔除的前面的旧的,判断是否是元音,进行数量更新。时间复杂度与s的长度成正比。

三、题解

class Solution:

def maxVowels(self, s: str, k: int) -> int:

vowel = {'a','e','i','o','u'}

count = 0

for item in s[:k]:

if item in vowel:

count += 1

maxcount = count

for num in range(k,len(s)):

if s[num] in vowel:

count += 1

if s[num-k] in vowel:

count -= 1

maxcount = max(count,maxcount)

return maxcount

相关推荐
星火开发设计31 分钟前
C++ queue 全面解析与实战指南
java·开发语言·数据结构·c++·学习·知识·队列
如果你想拥有什么先让自己配得上拥有1 小时前
近似数的思考学习
学习
ha20428941942 小时前
Linux操作系统学习记录之----自定义协议(网络计算器)
linux·网络·学习
振华说技能2 小时前
SolidWorks学习大纲-从基础到全面精通,请看详情
学习
曦月逸霜2 小时前
离散数学-学习笔记(持续更新中~)
笔记·学习·离散数学
im_AMBER3 小时前
Leetcode 101 对链表进行插入排序
数据结构·笔记·学习·算法·leetcode·排序算法
Mr -老鬼3 小时前
Rust与Go:从学习到实战的全方位对比
学习·golang·rust
laplace01233 小时前
# 第四章|智能体经典范式构建 —— 学习笔记(详细版)
笔记·学习
程序猿零零漆3 小时前
Spring之旅 - 记录学习 Spring 框架的过程和经验(十四)SpringMVC的请求处理
学习·spring·pandas
别了,李亚普诺夫3 小时前
PCB设计大师篇笔记
笔记·嵌入式硬件·学习