g0601_0700.s0680_valid_palindrome_ii.Solution Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of leetcode-in-java Show documentation
Show all versions of leetcode-in-java Show documentation
Java-based LeetCode algorithm problem solutions, regularly updated
package g0601_0700.s0680_valid_palindrome_ii;
// #Easy #String #Greedy #Two_Pointers #2022_03_22_Time_10_ms_(61.31%)_Space_55.3_MB_(15.70%)
public class Solution {
public boolean validPalindrome(String s) {
int l = 0;
int r = s.length() - 1;
while (l < r) {
if (s.charAt(l) != s.charAt(r)) {
return isPalindrome(s.substring(l + 1, r + 1)) || isPalindrome(s.substring(l, r));
}
l++;
r--;
}
return true;
}
private boolean isPalindrome(String s) {
int l = 0;
int r = s.length() - 1;
while (l < r) {
if (s.charAt(l) != s.charAt(r)) {
return false;
}
l++;
r--;
}
return true;
}
}