Cho một số nguyên x, trả về true nếu x là số nguyên palindrome. Một số nguyên là một palindrome khi nó đọc ngược như tiến
Ví dụ: 121 là một bảng màu trong khi 123 thì không
ví dụ 1
Input: x = 121
Output: true
Explanation: 121 reads as 121 from left to right and from right to left
ví dụ 2
Input: x = -121
Output: false
Explanation: From left to right, it reads -121. From right to left, it becomes 121-. Therefore it is not a palindrome.
ví dụ 3
Input: x = 10 Output: false Explanation: Reads 01 from right to left. Therefore it is not a palindrome.
Hạn chế
-231 [0x7fffffff - d] / 10] return false; // overflow
k = k * 10 + d;
n = n / 10;
}
return [k == x];
}
Sao chép mã và thử với Trình chỉnh sửa trực tiếpĐầu vào
cmd-121
đầu ra
cmdsai
#3 Ví dụ về mã với lập trình C++
Input: x = -121 Output: false Explanation: From left to right, it reads -121. From right to left, it becomes 121-. Therefore it is not a palindrome.7
class Solution {
public:
bool isPalindrome[int x] {
if [x < 0 || [x != 0 && x%10 == 0]] return false;
int y = 0;
while [x > y]{
y = y*10 + x%10;
x = x/10;
}
return [x==y || x==y/10];
}
};
Sao chép mã và thử với Trình chỉnh sửa trực tiếpĐầu vào
cmd10
đầu ra
cmdsai
#4 Ví dụ về mã với lập trình C#
Input: x = -121 Output: false Explanation: From left to right, it reads -121. From right to left, it becomes 121-. Therefore it is not a palindrome.8
namespace LeetCode
{
public class _009_PalindromeNumber
{
public bool IsPalindrome[int x]
{
if [x < 0] { return false; }
if [x < 10] { return true; }
var temp = x;
var y = 0;
var digit = 0;
while [temp != 0]
{
digit = temp % 10;
y = y * 10 + digit;
temp /= 10;
}
return x == y;
}
}
}
Sao chép mã và thử với Trình chỉnh sửa trực tiếpĐầu vào
cmd10
đầu ra
sai
#5 Ví dụ về mã với lập trình Java
Input: x = -121 Output: false Explanation: From left to right, it reads -121. From right to left, it becomes 121-. Therefore it is not a palindrome.9
class Solution {
public boolean isPalindrome[int x] {
if [x < 0] {
return false;
}
int reversedNum = 0;
int xCopy = x;
while [x > 0] {
int rem = x % 10;
reversedNum = reversedNum * 10 + rem;
x /= 10;
}
return reversedNum == xCopy;
}
}
Sao chép mã và thử với Trình chỉnh sửa trực tiếpĐầu vào
cmd121
đầu ra
cmdĐÚNG VẬY
#6 Ví dụ về mã với lập trình Python
Input: x = 10 Output: false Explanation: Reads 01 from right to left. Therefore it is not a palindrome.0
class Solution:
def isPalindrome[self, x]:
return str[x] == str[x][::-1]
Sao chép mã và thử với Trình chỉnh sửa trực tiếpĐầu vào
121
đầu ra
cmdĐÚNG VẬY
trình diễn
Leetcode - Giải quyết vấn đề về số Palindrome trong Javascript Leetcode
Trước
#08 Giải pháp chuỗi Leetcode thành số nguyên [atoi] trong C, C++, Java, JavaScript, Python, C# Leetcode
Kế tiếp
#10 Giải pháp khớp biểu thức chính quy Leetcode trong C, C++, Java, JavaScript, Python, C# Leetcode
Thử với Trình chỉnh sửa trực tiếp
Thể loại - Leetcode Thẩm phán trực tuyến Maniruzzaman Akash 4 tháng trước 401 0
Làm cách nào để tìm số palindrome trong JavaScript?
Thuật toán đối xứng. .
Lấy đầu vào từ người dùng
Sử dụng một biến tạm thời [giả sử temp] để lưu trữ đầu vào
Tìm mặt trái của nhiệt độ
So sánh đầu vào đã cho với temp
Nếu temp và đầu vào giống nhau, trả về True
Nếu chúng không giống nhau, trả về Sai
Palindrome có phải là số nguyên không?
Một số nguyên là số đối xứng nếu đảo ngược của số đó bằng số ban đầu .
Số nào là số palindrom?
Số palindromic là một số [trong một số cơ số ] giống nhau khi viết xuôi hoặc viết ngược , i. e. , có dạng. . Do đó, một vài số xuôi ngược đầu tiên là 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 22, 33, 44, 55, 66, 77, 88, 99, 101, 111, . [OEIS A002113].