#coding=utf-8 def reverseVowels(s): """ :type s: str :rtype: str """ sStr = list(s) voList = {'a':0, 'A':0, 'e':0, "E":0, 'i':0, "I":0, 'o':0, 'O':0, 'u':0, 'U':0} front = 0 length = len(sStr) back = length - 1 while front < back: while front < length and sStr[front] not in voList: front += 1 while back >= 0 and sStr[back] not in voList: back -= 1 if front < back: sStr[front], sStr[back] = sStr[back], sStr[front] front += 1 back -= 1 return "".join(sStr) str="hello world!" print(reverseVowels(str))
输出
hollo werld!
或
#coding=utf-8 def reverseVowels(s): """ :type s: str :rtype: str """ sStr = list(s) voList = {'a':0, 'A':0, 'e':0, "E":0, 'i':0, "I":0, 'o':0, 'O':0, 'u':0, 'U':0} front = 0 length = len(sStr) back = length - 1 while(1): while front < length and sStr[front] not in voList: front += 1 while back >= 0 and sStr[back] not in voList: back -= 1 if front < back: sStr[front], sStr[back] = sStr[back], sStr[front] front += 1 back -= 1 else: break return "".join(sStr) str="hello world!" print(reverseVowels(str))
参考: