問題是要反轉元音的字符串,就像輸入「hello」一樣,輸出應該是「holle」。反向元音字符串
我搜索到的快速沒有這樣的問題,所以我想發佈這個作爲一個討論。
我寫了下面的代碼,結果證明需要12ms來反轉這個「hello」,任何人都有使用swift特性的更好的解決方案?
class Solution {
func reverseVowels(s: String) -> String {
if s == "" { return "" }
let vowels = ["a","e","i","o","u","A","E","I","O","U"]
var sVowels = [Character]()
var reversedStr = ""
for vChar in s.characters {
if vowels.contains(String(vChar)) {
sVowels.append(vChar)
}
}
for char in s.characters {
if !vowels.contains(String(char)) {
reversedStr = reversedStr + String(char)
} else if vowels.contains(String(char)) {
reversedStr = reversedStr + String(sVowels.removeLast())
}
}
return reversedStr
}
}
如果您覺得您的問題已得到滿足,請將答案標記爲已接受。 – Alexander