[Leet Code] Palindrome Number

✳️ 문제 : LINK

주어진 숫자가 대칭수인지 판별하는 함수


✳️ 제한사항


✳️ 예시

Input: x = 121
Output: true

Input: x = -121
Output: false


✳️ 내가 푼 코드

var isPalindrome = function(x) {
    if(x < 0) return false; 
    const numStr = Math.abs(x).toString();
    let left = 0;
    let right = numStr.length - 1;

    while(left < right){
        if(numStr[left++] !== numStr[right--]) return false;
    }

    return true;
};

✳️ 생각 정리

  • 순회하려고 문자열로 변환해줬다.
  • 그 뒤 left right 인덱스 변수를 만들어서 각각 왼쪽 오른쪽 끝으로 지정하고 left 가 right 와 같아지거나 커질때까지 값을 비교해서 다르면 false 반환
  • 빨리 풀어서 다른 사람들 코드를 봤는데 와 진짜 다들 어떻게 이런 생각을 한거지 싶을 정도로 다양한 풀이들이 있었다.

좋은 웹페이지 즐겨찾기