LeetCode - 125. Valid Palindrome

요리하는코더·2021년 9월 24일
0

알고리즘 - 문제

목록 보기
21/48
post-thumbnail

코드

/**
 * @param {string} s
 * @return {boolean}
 */
var isPalindrome = function(s) {
    const regex = /[^a-zA-Z0-9]/g;
    const reverseStr = s.replace(regex,'').toLowerCase().split('').reverse().join('');
    
    if(s.replace(regex,'').toLowerCase() === reverseStr) return true;
    return false;
    
};

풀이 및 소감

정규식을 활용해 알파벳과 숫자만 남기고 toLowerCase()로 소문자로 만들어줬다. 그리고 split('')를 사용해 배열로 만든 뒤 reserve()를 사용해 뒤집고 join('')으로 다시 합쳐줬다. 처음에 알파벳만 남겨야하는 주 알았다가... alphanumeric인걸 틀린 뒤에 알았다...ㅠㅠ 다른 사람들 풀이를 보니 two pointer로 풀거나 match를 사용해 split('') 과정을 안 거친 거 같다. leetcodediscuss 기능과 틀린 테스트케이스를 보여줘서 편한 거 같다. 근데 가끔 스스로 테스트케이스 생각하는 능력은 부족해지는 거 같기도하다🤔

profile
요리 좋아하는 코린이

0개의 댓글