日拱一卒(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

相关推荐
乌暮1 小时前
数据库--JDBC编程
java·数据库·学习
_dindong1 小时前
Linux网络编程:进程间关系和守护进程
linux·运维·服务器·网络·c++·学习
能不能别报错2 小时前
K8s学习笔记(二十四) ingress
笔记·学习·kubernetes
能不能别报错2 小时前
K8s学习笔记(二十三) 网络策略 NetworkPolicy
笔记·学习·kubernetes
AI_56782 小时前
脑科学支持的Python学习法:每天2小时碎片化训练,用‘神经可塑性’打败拖延症“
开发语言·python·学习
superior tigre3 小时前
esp32学习随笔文档1
学习·esp32
本郡主是喵4 小时前
基于区块链的航班延误保险系统的设计与实现(源码+文档)
学习·区块链
17岁的勇气5 小时前
Unity Shader unity文档学习笔记(二十二):雪地几种实现方式(1. 2D贴花式 2.3D曲面细分并且实现顶点偏移)
笔记·学习·unity·shader
三体世界5 小时前
Qt从入门到放弃学习之路(1)
开发语言·c++·git·qt·学习·前端框架·编辑器