日拱一卒(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 小时前
JavaSec | SpringAOP 链学习分析
java·运维·服务器·开发语言·学习·apache·memcached
海的诗篇_2 小时前
移除元素-JavaScript【算法学习day.04】
javascript·学习·算法
傍晚冰川2 小时前
FreeRTOS任务调度过程vTaskStartScheduler()&任务设计和划分
开发语言·笔记·stm32·单片机·嵌入式硬件·学习
月初,3 小时前
MongoDB学习和应用(高效的非关系型数据库)
学习·mongodb·nosql
casual_clover3 小时前
Android 之 kotlin 语言学习笔记四(Android KTX)
android·学习·kotlin
Love__Tay4 小时前
【学习笔记】Python金融基础
开发语言·笔记·python·学习·金融
我的golang之路果然有问题5 小时前
云服务器部署Gin+gorm 项目 demo
运维·服务器·后端·学习·golang·gin
Lester_11016 小时前
嵌入式学习笔记 - freeRTOS xTaskResumeAll( )函数解析
笔记·stm32·单片机·学习·freertos
jackson凌6 小时前
【Java学习笔记】Math方法
java·笔记·学习
Humbunklung6 小时前
PySide6 GUI 学习笔记——常用类及控件使用方法(多行文本控件QTextEdit)
笔记·python·学习·pyqt