当前位置: 首页 > news >正文

[100天算法】-每个元音包含偶数次的最长子字符串(day 53)

题目描述

给你一个字符串 s ,请你返回满足以下条件的最长子字符串的长度:每个元音字母,即 'a','e','i','o','u' ,在子字符串中都恰好出现了偶数次。示例 1:输入:s = "eleetminicoworoep"
输出:13
解释:最长子字符串是 "leetminicowor" ,它包含 e,i,o 各 2 个,以及 0 个 a,u 。
示例 2:输入:s = "leetcodeisgreat"
输出:5
解释:最长子字符串是 "leetc" ,其中包含 2 个 e 。
示例 3:输入:s = "bcbcbc"
输出:6
解释:这个示例中,字符串 "bcbcbc" 本身就是最长的,因为所有的元音 a,e,i,o,u 都出现了 0 次。提示:1 <= s.length <= 5 x 10^5
s 只包含小写英文字母。来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/find-the-longest-substring-containing-vowels-in-even-counts
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

思路

复杂度分析

  • 时间复杂度:
  • 空间复杂度:

代码

JavaScript Code

/*** @param {string} s* @return {number}*/
var findTheLongestSubstring = function (s) {const map = {'00000': -1,};const cnt = {a: 0,e: 0,i: 0,o: 0,u: 0,};const vowels = Object.keys(cnt);let res = 0;for (let i = 0; i < s.length; i++) {s[i] in cnt && cnt[s[i]]++;let temp = '';for (let v of vowels) {temp += (cnt[v] % 2) + '';}if (temp in map) {res = Math.max(res, i - map[temp]);} else {map[temp] = i;}}return res;
};

相关文章:

  • UE5 Android下载zip文件并解压缩到指定位置
  • 编程新手的犯错之路
  • 【代码学习】voxel 或者 pillar,稀疏张量 转 稠密张量 的代码理解,理解了很久
  • 软件测试面试题及答案2024
  • Bug记录
  • 代码随想录算法训练营第10天|232. 用栈实现队列 225. 用队列实现栈
  • Zeal下载文档慢的问题
  • Marp: 将 Markdown 变为 PPT 式样的 VScode 插件
  • 【51单片机】串口与LED点阵屏(学习笔记)
  • Web APIs——M端事件、JS插件
  • Jetson NX FFmpeg硬件编解码实现
  • linux笔记总结-基本命令
  • Android 交叉编译openssl 、libxml2静态库
  • Flutter vs 前端 杂谈:SliverAppBar、手动实现Appbar、前端Html+JS怎么实现滚动变化型Appbar - 比较
  • MSQL系列(十三) Mysql实战-left/right/inner join 使用详解及索引优化
  • ERLANG 网工修炼笔记 ---- UDP
  • Flannel解读
  • go append函数以及写入
  • Iterator 和 for...of 循环
  • mysql 5.6 原生Online DDL解析
  • Mysql优化
  • 安装python包到指定虚拟环境
  • 使用iElevator.js模拟segmentfault的文章标题导航
  • 数据可视化之 Sankey 桑基图的实现
  • 写给高年级小学生看的《Bash 指南》
  • 【干货分享】dos命令大全
  • CMake 入门1/5:基于阿里云 ECS搭建体验环境
  • hi-nginx-1.3.4编译安装
  • 第二十章:异步和文件I/O.(二十三)
  • ​低代码平台的核心价值与优势
  • ​批处理文件中的errorlevel用法
  • #、%和$符号在OGNL表达式中经常出现
  • #我与Java虚拟机的故事#连载16:打开Java世界大门的钥匙
  • (1/2)敏捷实践指南 Agile Practice Guide ([美] Project Management institute 著)
  • (day 12)JavaScript学习笔记(数组3)
  • (Matlab)使用竞争神经网络实现数据聚类
  • (附源码)springboot炼糖厂地磅全自动控制系统 毕业设计 341357
  • (三)终结任务
  • (译) 理解 Elixir 中的宏 Macro, 第四部分:深入化
  • (轉貼)《OOD启思录》:61条面向对象设计的经验原则 (OO)
  • .NET/C# 编译期能确定的字符串会在字符串暂存池中不会被 GC 垃圾回收掉
  • .NET/C# 在代码中测量代码执行耗时的建议(比较系统性能计数器和系统时间)
  • .net解析传过来的xml_DOM4J解析XML文件
  • .sdf和.msp文件读取
  • .secret勒索病毒数据恢复|金蝶、用友、管家婆、OA、速达、ERP等软件数据库恢复
  • @for /l %i in (1,1,10) do md %i 批处理自动建立目录
  • [ 云计算 | AWS ] AI 编程助手新势力 Amazon CodeWhisperer:优势功能及实用技巧
  • [20170705]diff比较执行结果的内容.txt
  • [AAuto]给百宝箱增加娱乐功能
  • [ABP实战开源项目]---ABP实时服务-通知系统.发布模式
  • [ajaxupload] - 上传文件同时附件参数值
  • [Android 数据通信] android cmwap接入点
  • [CF543A]/[CF544C]Writing Code
  • [CF703D]Mishka and Interesting sum/[BZOJ5476]位运算
  • [CSS]中子元素在父元素中居中