Merge pull request #127 from NovaHe/fix/345

fix/345: clean up redundant code
This commit is contained in:
halfrost
2021-05-05 22:36:45 +08:00
committed by GitHub
2 changed files with 24 additions and 32 deletions

View File

@ -3,25 +3,22 @@ package leetcode
func reverseVowels(s string) string {
b := []byte(s)
for i, j := 0, len(b)-1; i < j; {
if isVowels(b[i]) && isVowels(b[j]) {
b[i], b[j] = b[j], b[i]
if !isVowel(b[i]) {
i++
j--
} else if isVowels(b[i]) && !isVowels(b[j]) {
j--
} else if !isVowels(b[i]) && isVowels(b[j]) {
i++
} else {
i++
j--
continue
}
if !isVowel(b[j]) {
j--
continue
}
b[i], b[j] = b[j], b[i]
i++
j--
}
return string(b)
}
func isVowels(s byte) bool {
if s == 'a' || s == 'e' || s == 'i' || s == 'o' || s == 'u' || s == 'A' || s == 'E' || s == 'I' || s == 'O' || s == 'U' {
return true
}
return false
func isVowel(s byte) bool {
return s == 'a' || s == 'e' || s == 'i' || s == 'o' || s == 'u' || s == 'A' ||
s == 'E' || s == 'I' || s == 'O' || s == 'U'
}

View File

@ -37,35 +37,30 @@ Output: "leotcede"
## 代码
```go
package leetcode
func reverseVowels(s string) string {
b := []byte(s)
for i, j := 0, len(b)-1; i < j; {
if isVowels(b[i]) && isVowels(b[j]) {
b[i], b[j] = b[j], b[i]
if !isVowel(b[i]) {
i++
j--
} else if isVowels(b[i]) && !isVowels(b[j]) {
j--
} else if !isVowels(b[i]) && isVowels(b[j]) {
i++
} else {
i++
j--
continue
}
if !isVowel(b[j]) {
j--
continue
}
b[i], b[j] = b[j], b[i]
i++
j--
}
return string(b)
}
func isVowels(s byte) bool {
if s == 'a' || s == 'e' || s == 'i' || s == 'o' || s == 'u' || s == 'A' || s == 'E' || s == 'I' || s == 'O' || s == 'U' {
return true
}
return false
func isVowel(s byte) bool {
return s == 'a' || s == 'e' || s == 'i' || s == 'o' || s == 'u' || s == 'A' ||
s == 'E' || s == 'I' || s == 'O' || s == 'U'
}
```