728x90
Contents
대칭인 숫자가 나오면 ture를 반환하라
문제 설명
Given an integer x, return true if x is a palindrome, and false otherwise.
정수 x가 주어졌을 때, 만약 x가 대칭이면 true를 반환하고 그렇지 않으면 false를 반환하라.
제한사항
- -231 <= x <= 231 - 1
입출력 예시
Input: x = 121
Output: true
Explanation: 121은 왼쪽에서 오른쪽으로 갔을 때랑 오른쪽에서 왼쪽으로 갔을 때가 같다.
설계 / 아이디어
풀이방법1: int
1. x의 각 자리수를 배열에 저장
2. 배열 뒤집기
3. 뒤집은 배열과 원래 배열이 같다면 true
class Solution {
public boolean isPalindrome(int x) {
if (x < 0) {
return false;
}
int[] num =
Stream.of(String.valueOf(x).split("")).mapToInt(Integer::parseInt).toArray();
int[] revertNum = new int[num.length];
for (int i = 0; i < num.length; i++) {
revertNum[i] = num[num.length - 1 - i];
}
for (int i = 0; i < num.length; i++) {
if (num[i] != revertNum[i]) {
return false;
}
}
return true;
}
}
풀이방법2: Stirng
1. str에 x를 문자열로 저장
2. reverse에 메서드를 사용해서 뒤집힌 str을 저장
class Solution {
public boolean isPalindrome(int x) {
String str=String.valueOf(x);
String reverse= new StringBuilder(str).reverse().toString();
if(str.equals(reverse)) {
return true;
}
else {
return false;
}
}
}
728x90
'Java > 리트코드' 카테고리의 다른 글
[LeetCode][JAVA] 35. Search Insert Position (0) | 2023.02.20 |
---|---|
[리트코드][JAVA] 1523. Count Odd Numbers in an Interval Range (0) | 2023.02.13 |
[리트코드][Java] 566. Reshape the Matrix 행렬을 바꿔라 (0) | 2023.01.09 |
[리트코드][Java] 121. Best Time to Buy and Sell Stock 주식을 사고 팔 최적의 시기 (0) | 2023.01.09 |
[리트코드][Java] 350. Intersection of Two Arrays II 두 배열의 교차점2 (0) | 2023.01.09 |
댓글