這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。
Go語言ReverseVowelsofaString
主要是判斷是不是母音字元,沒啥難度,記得實際寫的時候要去掉魔鬼數字
package mainimport ( "fmt" )//注意考慮大小寫func isVowel(vowel rune) bool { if vowel == 97 || vowel == 97-32 { return true } if vowel == 101 || vowel == 101-32 { return true } if vowel == 105 || vowel == 105-32 { return true } if vowel == 111 || vowel == 111-32 { return true } if vowel == 117 || vowel == 117-32 { return true } return false}func reverseVowels(s string) string { runeString := []rune(s) flag := false for from, to := 0, len(s)-1; from < to; from, to = from+1, to-1 { for { flag = isVowel(runeString[from]) if flag || from >= to{ break } from++ } for { flag = isVowel(runeString[to]) if flag || from >= to{ break } to-- } runeString[from], runeString[to] = runeString[to], runeString[from] } return string(runeString)}func main(){ //ans := reverseVowels("helalo") //ans := reverseVowels("hll") //ans := reverseVowels("hello") ans := reverseVowels("Aa") fmt.Println(ans) }