Leetcode345 反轉字串中的母音字母

2021-10-01 17:25:13 字數 1938 閱讀 4361

編寫乙個函式,以字串作為輸入,反轉該字串中的母音字母。

示例 1:

輸入: 「hello」

輸出: 「holle」

示例 2:

輸入: 「leetcode」

輸出: 「leotcede」

說明:母音字母不包含字母"y"。

*

/c++解法

class

solution

elseif(

isvowel

(s[left]))

else

}return s;

}bool

isvowel

(char c)};

class

solution

return s;}}

;*/python 解法

class

solution

: def reversevowels

(self,s)

: y_list =

['a'

,'e'

,'i'

,'o'

,'u'

,'a'

,'e'

,'i'

,'o'

,'u'

] ss =

list

(s) ys =

[c for c in ss if c in y_list]

ys.reverse()

index =

0for i in range(0

,len

(ss)):

if ss[i] in y_list:

ss[i]

= ys[index]

index +=1

return''.

join

(ss)

class

solution

: def reversevowels

(self, s)

:"""

:type s: str

:rtype: str

"""word =

'aeiouaeiou'

filter_word =

[i for i in s if i in word]

ret =

list

(s)for idx, val in enumerate

(ret)

:if val in word:

ret[idx]

= filter_word.

pop(

)return''.

join

(ret)

class

solution

: def reversevowels

(self,s)

: word =

'aeiouaeiou'

left =

0 right =

len(s)-1

s_str =

list

(s)while left < right:

if s_str[left] in word and s_str[right] in word:

s_str[left]

,s_str[right]

=s_str[right]

,s_str[left]

left +=1

right -=1

elif s_str[left] in word and s_str[right]

not in word:

right -=1

else

: left +=1

return''.

join

(s_str)

LeetCode 345 反轉字串中的母音字母

編寫乙個函式,以字串作為輸入,反轉該字串中的母音字母。示例 1 輸入 hello 輸出 holle 示例 2 輸入 leetcode 輸出 leotcede 說明 母音字母不包含字母 y 老方法,有點囉嗦,但是可以解決,注意字典中有大小寫。class solution def reversevowe...

LeetCode 345反轉字串中的母音字母

class solution unordered set char uset for auto c vowels uset.insert c uset只儲存關鍵字 int left 0,right s.size 1 while left right return s class solution w...

LeetCode 345 反轉字串中的母音字母

題目 編寫乙個函式,以字串作為輸入,反轉該字串中的母音字母。示例1 輸入 hello 輸出 holle 示例2 輸入 leetcode 輸出 leotcede 思路 定義兩個指標,左指標從左向右掃瞄找到母音字母,右指標從右向左掃瞄找到母音字母,掃瞄過程中判斷左指標是否小於右指標,否則退出迴圈,直接交...