LeetCode |文字列反転文字列の母音の0345.リバース母音[パイソン]

LeetCode 0345.文字列反転した文字列のリバース母音は母音簡単[] [] [Pythonのダブルポインタ]

タイトル

英語のトピックのリンク

入力として文字列を取る関数を書くと文字列の唯一の母音を逆転。

例1:

Input: "hello"
Output: "holle"

例2:

Input: "leetcode"
Output: "leotcede"

注:
母音は文字「Y」を含んでいません。

翻訳

中国のトピックリンク

入力として文字列への書き込み機能は、文字列に母音を反転しました。

例1:

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

例2:

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

説明:
母音は文字「Y」が含まれていません。

思考

ダブルポインタ

見つけるために、左から右に左ポインタ元音字母を見つけるために、右から左へ、右ポインタ元音字母

文字列を考慮すると、変更することはできませんので、必要がlist置き換えられます。

Pythonコード

class Solution(object):
    def reverseVowels(self, s):
        """
        :type s: str
        :rtype: str
        """
        left, right = 0, len(s)-1  # 同时赋值
        vowels = 'aeiou'
        string = list(s)  # 字符串不能改变, 所以要转为 list
        while left < right:
            if string[left].lower() not in vowels:  # lower 是取小写
                left += 1
            elif string[right].lower() not in vowels:
                right -= 1
            else:
                string[left], string[right] = string[right], string[left]
                left += 1
                right -= 1
        return ''.join(string)  # 将 string 中的元素以指定的字符连接生成一个新的字符串

コードアドレス

GitHubのリンク

298元記事公開 ウォンの賞賛391 ビューに25万+を

おすすめ

転載: blog.csdn.net/Wonz5130/article/details/104269137