码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • ​力扣解法汇总1704. 判断字符串的两半是否相似


    目录链接:

    力扣编程题-解法汇总_分享+记录-CSDN博客

    GitHub同步刷题项目:

    https://github.com/September26/java-algorithms

    原题链接:力扣


    描述:

    给你一个偶数长度的字符串 s 。将其拆分成长度相同的两半,前一半为 a ,后一半为 b 。

    两个字符串 相似 的前提是它们都含有相同数目的元音('a','e','i','o','u','A','E','I','O','U')。注意,s 可能同时含有大写和小写字母。

    如果 a 和 b 相似,返回 true ;否则,返回 false 。

    示例 1:

    输入:s = "book"
    输出:true
    解释:a = "bo" 且 b = "ok" 。a 中有 1 个元音,b 也有 1 个元音。所以,a 和 b 相似。
    

    示例 2:

    输入:s = "textbook"
    输出:false
    解释:a = "text" 且 b = "book" 。a 中有 1 个元音,b 中有 2 个元音。因此,a 和 b 不相似。
    注意,元音 o 在 b 中出现两次,记为 2 个。
    

    提示:

    • 2 <= s.length <= 1000
    • s.length 是偶数
    • s 由 大写和小写 字母组成

    解题思路:

    * 解题思路:
    * 通过set记录所有元音,然后分别此案例前半部分和后半部分,计算出各自的元音数量
     
    

    代码:

    1. public class Solution1704 {
    2. public boolean halvesAreAlike(String s) {
    3. Character[] chars = {'a', 'e', 'i', 'o', 'u', 'A', 'E', 'I', 'O', 'U'};
    4. Set<Character> set = new HashSet(Arrays.asList(chars));
    5. char[] achars = s.substring(0, s.length() / 2).toCharArray();
    6. char[] bchars = s.substring(s.length() / 2).toCharArray();
    7. int aNum = 0;
    8. int bNum = 0;
    9. for (int i = 0; i < achars.length; i++) {
    10. if (set.contains(achars[i])) {
    11. aNum++;
    12. }
    13. if (set.contains(bchars[i])) {
    14. bNum++;
    15. }
    16. }
    17. return aNum == bNum;
    18. }
    19. }

  • 相关阅读:
    新库上线 | CnOpenData招聘公司基本信息扩展数据
    IIS解析漏洞
    国内做SRM系统的公司哪家比较好?如何利用SRM系统管理好供应商?
    【Matplotlib绘制图像大全】(二十五):Matplotlib使用figure()添加画布
    ​怎么保留硬盘数据合并分区 ,如何才能合并且不丢失数据
    Rowset 的元数据一直存储在内存中
    网络安全——使用Linux系统命令对后门端口进行查杀
    buuctf crypto 【RSA】解题记录
    canvas 画布绘制时钟
    nodejs中如何使用Redis
  • 原文地址:https://blog.csdn.net/AA5279AA/article/details/127800550
  • 最新文章
  • 【JVM】编译执行与解释执行的区别是什么?JVM 使用哪种方式?
    用 Hashids 优雅解决 C 端自增 ID 暴露问题
    V8引擎 精品漫游指南--Ignition篇(上) 指令 栈帧 槽位 调用约定 内存布局 基础内容
    LLVM Pass快速入门(四):代码插桩
    milkup:桌面端 markdown AI续写和即时渲染
    基于项目工程构建SBOM(软件物料清单)的研究
    鸿蒙应用开发UI基础第二节:鸿蒙应用程序框架核心解析与实操
    .NET 中如何快速实现 List 集合去重?
    扣子Coze实战:从0到1打造抖音+小红书热点监控智能体
    浅谈数据访问层
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号