본문 바로가기

기본공부/알고리즘

[Leetcode] JAVA - Palindrome Number (Easy)

문제)

 

대칭수 또는 회문수는 순서대로 읽은 수와 거꾸로 읽은 수가 같은 수를 말한다. 

방법)

class Solution {
    public boolean isPalindrome(int x) {
        if(0<=x){
            int num=x, reverse=0;
            
            while(num!=0){
                reverse= reverse*10+num%10;//
                num/=10;
            }
            return reverse == x;//리버스 숫자와 x가 같은지 true/false
        }
        return false;//음수는 false
    }
}

 

 

x가 음수일 때는 false를 리턴하게 되고, 양수일 때 x값을 저장한 num이 0이 되면 종료되는 while반복문을 만든다.

반복문 안에서는 num의 값을 반대로 저장한 reverse의 값을 저장하며, return에서 reverse == x로 비교해 같으면 true, 다르면 false가 반환되게 만든다.