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)
    原文作者:墨酌
    原文地址: https://www.jianshu.com/p/4e2bd0c0f30d
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞