문제)
대칭수 또는 회문수는 순서대로 읽은 수와 거꾸로 읽은 수가 같은 수를 말한다.
방법)
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가 반환되게 만든다.
'기본공부 > 알고리즘' 카테고리의 다른 글
[Leetcode] JAVA - Final Value of Variable After Performing Operations (Easy) (0) | 2021.09.06 |
---|---|
[Leetcode] JAVA - Concatenation of Array (Easy) (0) | 2021.09.05 |
[Leetcode] JAVA - Two sum(Easy) (0) | 2021.09.02 |