펠린드롬의 비교 문제는 투 포인터를 활용하여 각 인덱스의 문자열이 같은지 비교하면 되는 문제이다.
불필요한 문자를 정제하는 과정이 가장 중요하다.
function isPalindrome(s: string): boolean {
// 불필요 문자 제거
const cleanStr = s.toLowerCase().replace(/[^a-z0-9]/g, '');
let [left, right] = [0, cleanStr.length - 1]
while (left < right) {
// 펠린드롬 비교
if (cleanStr[left] !== cleanStr[right]) {
return false;
}
left++;
right--;
}
return true;
}