Problems:
https://leetcode.com/problems/valid-palindrome/
Solution:
class Solution {
public boolean isPalindrome(String s) {
// 将字符小写化
String ls = s.toLowerCase();
// 删除不是数字/字母的字符 - 利用stringbuilder存储再转成string
StringBuilder sb = new StringBuilder();
for(int i = 0; i<ls.length(); i++) {
if(Character.isLetterOrDigit(ls.charAt(i))) {
sb.append(ls.charAt(i));
}
}
String str = sb.toString();
if(str.length() == 0) {
return true;
}
// 用双指针判断是否回文
int i = 0;
int j = str.length() -1;
while(i<j) {
if(str.charAt(i) != str.charAt(j)) {
return false;
}
i++;
j--;
}
return true;
}
}