【LeetCode 75】第十五题(1456)定长子串中元音的最大数目

news2024/5/20 18:16:34

目录

题目:

示例:

分析:

代码+运行结果:


题目:

示例:

分析:

就难度而言,我觉得算不上中等,因为和上一题基本一致,只不过上一题是求最大平均数,而这一题是求最大元音数,并且都是固定长度的滑动窗口。

我们只需要在窗口滑动的时候判断滑出窗口的字符是不是元音字符,以及滑入窗口的字符是不是元音字符,然后再相应的将元音数进行加一减一即可。

参考上一题的题解再看看下面的代码,应该是很好理解的。

代码+运行结果:

class Solution {
public:
    //用于检查一个字符是不是元音
    bool check(char& c){
        string Ch="aeiou";
        for(char e:Ch){
            if(e==c) return true;
        }
        return false;
    }
    int maxVowels(string s, int k) {
        int l=0;int r=l+k-1;
        int res=0;
        //计算初始窗口有多少个元音字母数
        for(int i=l;i<k;i++){
            if(check(s[i])) res++;
        }
        int temp=res;
        while(r<s.size()){
            //滑动窗口
            if(check(s[l++])) temp--;
            if(check(s[++r])) temp++;
            res=max(res,temp);
            if(res==k) return res;  //若是有都是元音的窗口,那么也不用接着遍历了,不可能有比窗口长度还大的结果了
        }
        return res;
    }
};

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/814641.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于Django美食分享交流网站-计算机毕设 附源码10913

美食分享交流网站 摘 要 大数据时代下&#xff0c;数据呈爆炸式地增长。为了迎合信息化时代的潮流和信息化安全的要求&#xff0c;利用互联网服务于其他行业&#xff0c;促进生产&#xff0c;已经是成为一种势不可挡的趋势。在美食分享的要求下&#xff0c;开发一款整体式结构的…

为什么计算机对浮点型数字计算存在误差

我们输入的十进制小数在计算机中都是以二进制进行存储。比如&#xff1a; 我们把0.25转换为二进制 0.25 * 2 0.5 取0 0.50 * 2 1.0 取1 所以十进制0.25的二进制应当为0.01但是我们把0.3转换为二进制存储 0.3 * 2 0.6 取0 0.6 * 2 1.2 取1 0.2 * 2 0.4 取0 0.4 * …

在腾讯云服务器OpenCLoudOS系统中安装mysql(有图详解)

1. 创建MySQL安装目录 mkdir -p app/soft//mysql 2. 进入MySQL安装目录&#xff0c;下载&#xff0c;安装 cd /app/soft/mysql/ wget http://dev.mysql.com/get/mysql-5.7.26-1.el7.x86_64.rpm-bundle.tar 得到安装包&#xff1a; 解压安装包&#xff1a; 查看系统是否自带…

使用Python机器学习预测外卖送餐时间!

大家好&#xff0c;我是小F&#xff5e; 现在的天气是一天比一天热&#xff0c;好多人周末休息在家的时候&#xff0c;就会选择点外卖&#xff0c;毕竟出去一趟又晒又热。 如果你太饿了&#xff0c;点餐太晚了&#xff0c;就可能去关注外卖员送餐到哪了&#xff0c;还有多少时间…

Kotlin泛型的协变与逆变

以下内容摘自郭霖《第一行代码》第三版 泛型的协变 一个泛型类或者泛型接口中的方法&#xff0c;它的参数列表是接收数据的地方&#xff0c;因此可以称它为in位置&#xff0c;而它的返回值是输出数据的地方&#xff0c;因此可以称它为out位置。 先定义三个类&#xff1a; op…

《golang设计模式》第一部分·创建型模式-03-建造者模式(Builder)

文章目录 1. 概念1.1 角色1.2 类图 2. 代码示例2.1 设计2.2 代码2.3 类图 1. 概念 1.1 角色 Builder&#xff08;抽象建造者&#xff09;&#xff1a;给出一个抽象接口&#xff0c;以规范产品对象的各个组成成分的建造。ConcreteBuilder&#xff08;具体建造者&#xff09;&a…

移动机器人和UGV的自主导航(Matlab代码Simulink)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…

Redis - 底层数据结构

简介 Redis 的底层数据结构主要以下几种&#xff1a; SDS(Simple Dynamic String, 简单动态字符串)ZipList(压缩列表)QuickList(快表)Dict(字典)IntSet(整数集合)ZSkipList(跳跃表) 简单动态字符串 在 Redis 中&#xff0c;并不会直接使用 C 语言自带的字符串结构作为实际的…

hvv 云安全专项检测工具

过去的一年里&#xff0c;我们可能已经注意到了一个明显的趋势&#xff1a;安全对抗正逐步迁移至云端。 如&#xff1a;今年hw的要求中增加了云资产相关的得分项计算 如&#xff1a;越来越多的安全工具开始专注于云安全检测方向 如&#xff1a;越来越多的安全峰会加入了云原…

“一种蒸发冷凝水去除氨氮装置”技术专利

蒸发器中随着母盐液的蒸浓&#xff0c;溶液温度升高&#xff0c;由于氨氮易挥发的特性&#xff0c;游离氨挥发于水蒸气中&#xff0c;从而导致冷凝水中氨氮浓度上升&#xff0c;而影响出水水质。 “一种蒸发冷凝水去除氨氮装置”专利(证书号&#xff1a;第19422309号;专利号&am…

【前端】javascript+html+css 家具销售网站(代码+报告)

&#x1f449;博__主&#x1f448;&#xff1a;米码收割机 &#x1f449;技__能&#x1f448;&#xff1a;C/Python语言 &#x1f449;公众号&#x1f448;&#xff1a;测试开发自动化【获取源码商业合作】 &#x1f449;荣__誉&#x1f448;&#xff1a;阿里云博客专家博主、5…

移动端个人中心UI设计

效果图 源码如下 页面设计 <template><div class"container"><!-- 顶部用户信息 start--><div class"header"><div class"user-info"><van-image class"user-img" round width"70" :sr…

【打造超酷的GitHub主页】

文章目录 Github状态信息-api账户信息统计最常用语言Repo卡片 社交统计统计访问次数徽标 首先上地址&#xff1a;https://gitee.com/java_wxid/giteeprofile/blob/master/README.md 为了照顾一部分网络较差的的朋友们&#xff0c;这里使用国内的gitee仓库将主页代码提供给大家&…

C语言 位运算符 “|“ 的5种高级用法

前言 在上一篇文章中&#xff0c;我们介绍了&运算符的高级用法&#xff0c;本篇文章&#xff0c;我们将介绍| 运算符的一些高级用法。 一、人物简介 第一位闪亮登场&#xff0c;有请今后会一直教我们C语言的老师 —— 自在。 第二位上场的是和我们一起学习的小白程序猿 —…

16、博客列表加载效果 - 博客界面改造文章(202307)

最近闲来无事&#xff0c;就想着把博客界面弄得再有点动画效果&#xff0c;于是就找了延迟函数&#xff0c;把博客的内容列表加载的动画写出来了。 该动画效果还是挺炫的&#xff0c;但是因为刷新页面&#xff0c;下面列表的显示需要拉动到底下才看到&#xff0c;所以这里只能记…

微信小程序监测版本更新

在index.js里面 不放到app.js里面是因为有登录页面&#xff0c;在登录页面显示更新不太友好 onShow() {const updateManager wx.getUpdateManager()// 请求完新版本信息的回调updateManager.onCheckForUpdate(res > {if (res.hasUpdate) {// 新版本下载成功updateManage…

【腾讯云 Cloud Studio 实战训练营】体验搭建软件系统,无经验也能做开发

文章目录 前言IDE 解放开发者的生产力功能强大的 IDE快速搭建 Vue 开发环境注册 Cloud Studio进入Vue预置开发环境安装相关依赖包主文件 main.js 引入相关库和包首页增加移动端默认样式增加主要代码 IDE 的适用场景总结 前言 云计算技术的不断发展为代码开发带来了全新的体验&…

【Uniapp】支付链转二维码

前言 提示&#xff1a;这个是一个很小的项目&#xff0c;大概30分钟就能搞定 实现方式&#xff1a;输入支付代码&#xff0c;存储到对应的数据库表中&#xff0c;二维码访问一个PHP文件通过id来进行重定向&#xff0c;这样就可以使每张二维码都是固定的&#xff0c;替换二维码…

CS5213 国产HDMI转VGA带音频方案芯片|CS5213规格书|CS5213原理图

集睿致远/ASL推出的CS5213芯片是一个国产HDMI&#xff08;高清多媒体接口&#xff09;到VGA桥接芯片。它将HDMI信号转换为标准VGA信号它可以在适配器、智能电缆等设备中设计 CS5213特征 将HDMI信号转换为VGA输出 支持数字信号到模似信号的转换 支持 HDCP 1.0/1.1/1.2 操作简…

OpenAI API访问速度不佳?试试用Vercel来加速!

前言 众所周知&#xff0c;使用openAI API在国内访问体验并不佳&#xff0c;经常遇到访问较慢或者访问失败的问题。本文着重讲讲怎么解决这个问题&#xff0c;让我们日常开发和使用能够更方便的体验到AI带来的便利 为了帮大家省钱&#xff0c;也为了方便操作&#xff0c;实现…