《LeetCode之每日一题》:263.反转字符串中的元音字母

Posted 是七喜呀!

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了《LeetCode之每日一题》:263.反转字符串中的元音字母相关的知识,希望对你有一定的参考价值。

反转字符串中的元音字母


题目链接: 反转字符串中的元音字母

有关题目

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

元音字母包括 'a''e''i''o''u',且可能以大小写两种形式出现。
示例 1:

输入:s = "hello"
输出:"holle"
示例 2:

输入:s = "leetcode"
输出:"leotcede"
提示:

1 <= s.length <= 3 * 10^5
s 由 可打印的 ASCII 字符组成

题解

法一:双指针
参考官方题解

class Solution 
public:
    string reverseVowels(string s) 
        auto isVowel = [vowels = "aeiouAEIOU"s](char ch)
            return vowels.find(ch) != string::npos;
        ;
        int n = s.size();
        int left = 0, right = n - 1;
        while(left < right)
        
            while(left < n && !isVowel(s[left]))
                left++;
            while(right > 0 && !isVowel(s[right]))
                right--;
            
            if (left < right)
            
                swap(s[left], s[right]);
                left++;
                right--;
            
        

        return s;
    
;

以上是关于《LeetCode之每日一题》:263.反转字符串中的元音字母的主要内容,如果未能解决你的问题,请参考以下文章

《LeetCode之每日一题》:287.反转链表

《LeetCode之每日一题》:136.反转链表

《LeetCode之每日一题》:287.反转链表

《LeetCode之每日一题》:71.翻转图像

LeetCode算法,每日一题,冲击阿里巴巴,day4

Java算法 每日一题 编号541:反转字符串 II