728x90
반응형
LeetCode-9
PalindromeNumber : Given an integer x, return true if x is a palindrome, and false otherwise.
note : From left to right, it reads -121. From right to left, it becomes 121-. Therefore it is not a palindrome.
Answer
:::python
class Solution:
def isPalindrome(self, x: int) -> bool:
return str(x) == str(x)[::-1]
Result : 57ms Memory: 13.7mb
PalindromeNumber
PalindromeNumber는 앞으로 읽으나 뒤로 읽으나 동일한 값을 가지는 숫자를 말합니다.
예를 들어, 121이PalindromeNumber입니다. 왜냐하면 121을 뒤에서부터 읽어도 121이기 때문입니다.
하지만, 123은PalindromeNumber가 아닙니다. 왜냐하면 123을 뒤에서부터 읽으면 321이기 때문입니다.
PalindromeNumber는 주로 알고리즘 문제에서 많이 등장합니다. 대표적인 예로는 숫자를 뒤집어서 판별하는 문제가 있습니다. 숫자를 뒤집어서 원래 숫자와 같은지 비교하면PalindromeNumber인지 아닌지 판별할 수 있습니다.
PalindromeNumber 판별 방법은 일반적으로 문자열로 변환한 뒤, 첫 번째 문자와 마지막 문자를 비교하고, 두 번째 문자와 뒤에서 두 번째 문자를 비교하는 방식으로 진행합니다. 이렇게 순차적으로 비교하다가 비교 중 하나라도 다른 문자가 나오면PalindromeNumber가 아니라고 판별하면 됩니다. 이러한 방식으로 구현된 알고리즘은 시간복잡도가 O(n)으로 매우 빠릅니다.
반응형
'One step' 카테고리의 다른 글
[leetcode-6] Zigzag Conversion (0) | 2023.04.18 |
---|---|
[leetcode-7] Reverse Integer (0) | 2023.04.16 |
[leetcode-4] Median of Two Sorted Arrays (0) | 2023.04.14 |
[leetcode-3] Longest Substring Without Repeating Characters (0) | 2023.04.14 |
[leetcode-23] Merge k Sorted Lists (0) | 2023.04.09 |