|
@@ -0,0 +1,17 @@
|
|
|
+func validPalindrome(s string) bool {
|
|
|
+ for l, r := 0, len(s)-1; l < r; l, r = l+1, r-1 {
|
|
|
+ if s[l] != s[r] {
|
|
|
+ return isPalindrome(s, l+1, r) || isPalindrome(s, l, r-1)
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return true
|
|
|
+}
|
|
|
+
|
|
|
+func isPalindrome(s string, i, j int) bool {
|
|
|
+ for ; i < j; i, j = i+1, j-1 {
|
|
|
+ if s[i] != s[j] {
|
|
|
+ return false
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return true
|
|
|
+}
|