

포인터 앞에 하나, 뒤에 하나를 계속 따라가며 만약 그 위치의 문자가 alphanumeric 하지 않다면 다음 문자를 비교하며 진행하면 될 것 같다.
ASCII table을 알아야했다...
class Solution {
public boolean isPalindrome(String s) {
int i = 0, j = s.length() - 1;
String newString = s.toLowerCase();
while (i <= j) {
if ((int)newString.charAt(i) < 48 || ((int)newString.charAt(i) > 57 &&
(int)newString.charAt(i) < 97) || (int)newString.charAt(i) > 122) {
i++;
continue;
}
if ((int)newString.charAt(j) < 48 || ((int)newString.charAt(j) > 57 &&
(int)newString.charAt(j) < 97) || (int)newString.charAt(j) > 122) {
j--;
continue;
}
if (newString.charAt(i) == newString.charAt(j)) {
i++;
j--;
} else {
return false;
}
}
return true;
}
}