题目描述
判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。
示例1:
输入: 121 输出: true
示例2:
输入: -121 输出: false 解释: 从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。
示例3:
输入: 10 输出: false 解释: 从右向左读, 为 01 。因此它不是一个回文数。
思路
1.如果输入是负数,那直接返回false。
2.和整数反转的思路一致,将整数翻转后与原数据比较。
Java代码实现
public boolean isPalindrome(int x) {
if(x < 0)
return false;
int sum = 0;
int temp = x;
while(x != 0){
int tail = x%10;
x = x/10;
sum = sum*10+tail;
}
return temp == sum;
}Golang代码实现
func isPalindrome(x int) bool {
if(x < 0){
return false
}
tmp := x
res := 0
for x != 0 {
res = res*10 + x%10
x = x / 10
}
return tmp == res
}
京公网安备 11010502036488号