首页 > 其他分享 >反转字符串中的元音字母

反转字符串中的元音字母

时间:2024-11-12 13:46:09浏览次数:3  
标签:arr String int 字母 char 字符串 while 元音

力扣链接:. - 力扣(LeetCode)

给你一个字符串 s ,仅反转字符串中的所有元音字母,并返回结果字符串。

元音字母包括 'a''e''i''o''u',且可能以大小写两种形式出现不止一次。

示例1

输入:s = "IceCreAm"

输出:"AceCreIm"

解释:

s 中的元音是 ['I', 'e', 'e', 'A']。反转这些元音,s 变为 "AceCreIm".

示例2

输入:s = "leetcode"

输出:"leotcede"

java代码如下

class Solution {
    public String reverseVowels(String s) {
        int n = s.length();
        char[] arr = s.toCharArray();
        int i = 0, j = n - 1;
        while (i < j) {
            while (i < n && !isVowel(arr[i])) {
                ++i;
            }
            while (j > 0 && !isVowel(arr[j])) {
                --j;
            }
            if (i < j) {
                swap(arr, i, j);
                ++i;
                --j;
            }
        }
        return new String(arr);
    }

    public boolean isVowel(char ch) {
        return "aeiouAEIOU".indexOf(ch) >= 0;
    }

    public void swap(char[] arr, int i, int j) {
        char temp = arr[i];
        arr[i] = arr[j];
        arr[j] = temp;
    }
}

标签:arr,String,int,字母,char,字符串,while,元音
From: https://blog.csdn.net/weixin_44331433/article/details/143712399

相关文章

  • 字符串函数strcpy.strcat.strcmp的应用和模拟实现
    strcpy的应用和模拟实现strcpy详解:先来看下官网对strcmp的介绍。绿色部分括号内为需要的两个参数.第一个char*destination指的是目标字符串的起始地址;第二个consetchar*source指的是要拷贝的字符串;最前面的char*strcpy表明返回类型为字符指针.(返回......
  • 代码随想录第八天|字符串part01--344.反转字符串、541.反转字符串Ⅱ、卡玛网54.替换数
    资源引用:leetcode题目:344.反转字符串(344.反转字符串-力扣(LeetCode))541.反转字符串Ⅱ(541.反转字符串II-力扣(LeetCode))卡玛网题目:卡玛网54.替换数字(54.替换数字(第八期模拟笔试)(kamacoder.com))碎碎念回归:本来应该11月6号打卡的,因为接连4天的考试+多个竞赛,导致推迟......
  • 图像转字符串
    图像转字符串publicstaticStringimageToString(StringfilePath){try(FileInputStreamimageInFile=newFileInputStream(filePath)){byte[]imageBytes=newbyte[(int)newFile(filePath).length()];imageInFile.read(imageBytes);String......
  • 3258. 统计满足 K 约束的子字符串数量 I
    题目链接解题思路小字符串不满足了,那么包含此小字符串的大字符串肯定不满足。大字符串满足,那么该字符串的所有子串都满足条件。所以,我们就可以把问题转成,「以i开头的字符串,满足条件的,最长多长?」然后再根据这个结果,计算以i开头的所有子串数目即可。计算了「以i开头的最长......
  • 【优选算法 — 滑动窗口】水果成篮 & 找到字符串中所有字母异位词
         水果成篮  水果成篮  题目描述  因为只有两个篮子,每个篮子装的水果种类相同,如果从0开始摘,则只能摘0和1两个种类;因为当我们在两个果篮都装有水果的情况下,如果再走到下一颗果树,果树的水果种类不是果篮中的任意一种,则停止采摘;所以就是要找......
  • 代码随想录算法训练营第二十二天| leetcode77. 组合、leetcode216.组合总和III、leetc
    1leetcode77.组合题目链接:77.组合-力扣(LeetCode)文章链接:代码随想录视频链接:带你学透回溯算法-组合问题(对应力扣题目:77.组合)|回溯法精讲!_哔哩哔哩_bilibili思路:开始想循环,感觉行不通,然后看了视频,就嗯理解了一些感觉跟递归的思路确实差不多1.1回溯三部曲回溯的方法首......
  • 844. 比较含退格的字符串
    题目说实话自己在尝试这道题的时候没什么清晰的思路和实现方法。看了官方题解,官方提供了两种方法:方法一:这个重构字符串刚开始也想到了,但是不知道怎么去实现,看了官方题解后,不禁一颤,噢,这是栈的运用啊,仔细想想,也觉得退格带来的效果真的很像栈顶元素的弹出。官方代码如下:class......
  • apropos——在 whatis 数据库中查找字符串
    转自于:https://github.com/jaywcjlove/linux-command,后不赘述apropos在whatis数据库中查找字符串补充说明apropos命令在一些特定的包含系统命令的简短描述的数据库文件里查找关键字,然后把结果送到标准输出。如果你不知道完成某个特定任务所需要命令的名称,可以使用一个关......
  • 关于我、重生到500年前凭借C语言改变世界科技vlog.17——字符函数&&字符串函数
    文章目录1.字符函数1.1字符分类函数1.1.1islower1.2字符转换函数1.2.1tolower2.字符串函数2.1strlen2.2strcpy和strncpy2.3strcat和strncat2.4strcmp和strncmp2.5strstr2.6strtok2.7strerror希望读者们多多三连支持小编会继续更新你们的鼓励就是我前进的......
  • 代码随想录算法训练营第十天 | 232.用栈实现队列+225. 用队列实现栈+20. 有效的括号+1
    加入训练营有点晚,没跟上任务就开始有些偷懒没有真的认真开始,从第十天开始下决心认真完成每天任务还有博客记录学习过程。栈与队列理论基础首先是学习了栈和队列的理论基础,队列 先进先出,栈 先进后出。栈 以底层容器完成其所有的工作,且对外接口统一,有.push,.pop等,不提供......