Problems: https://leetcode.com/problems/valid-palindrome-ii/
Solution:
若不回文s [ i : j ],比较s [ i+1 : j ]和s [ i : j+1 ]
class Solution {
public boolean isPalindrome(String s) {
for (int i = 0; i < (s.length()/2); i++) {
if (s.charAt(i) != s.charAt(s.length()-1-i)) {
return false;
}
}
return true;
}
public boolean validPalindrome(String s) {
int i = 0;
int j = s.length();
while (i<j) {
if (s.charAt(i) != s.charAt(j-1)) {
if(isPalindrome(s.substring(i+1, j)) || isPalindrome(s.substring(i, j-1))) {
return true;
} else {
return false;
}
}
i++;
j--;
}
return true;
}
}

本文提供了一种解决LeetCode上680题验证回文字符串 II的方法,通过检查字符串是否为回文,如果不是,则通过删除一个字符尝试使其成为回文。代码使用了Java实现,包括一个通用的回文检查函数和一个主要的验证函数。

1561

被折叠的 条评论
为什么被折叠?



