LeetCode刷题之路 反转字符串中的元音字母

反转字符串中的元音字母【简单】

编写一个函数,以字符串作为输入,反转该字符串中的元音字母。

示例 1:

输入: "hello"
输出: "holle"

示例 2:

输入: "leetcode"
输出: "leotcede"

说明:
元音字母不包含字母"y"。


解题思路

这道题是让我们反转字符串中的元音字母,但是没说大小写,所以元音字母总共包括aeiouAEIOU这些,我们作为字符串存储。然后我们创建两个队列分别存储给定字符串的元音字母和它们的位置,并把字符串转变成列表。最后从字符串列表中得到元音字母和位置,再以倒序插入到原来的位置,返回拼接的字符串。

class Solution:
    def reverseVowels(self, s):
        """
        :type s: str
        :rtype: str
        """
        from collections import deque
        vowel = 'aeiouAEIOU'
        s_vowel = deque()
        index = deque()
        s = list(s)
        for i in range(0,len(s)):
            if s[i] in vowel:
                index.append(i)
                s_vowel.append(s[i])
        for i in index:
            s[i] = s_vowel.pop()
        return ''.join(s)
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容