MelodyHub

没有伞的孩子必须努力奔跑!|

题目描述

判断一个整数是否是回文数。

回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。

示例 1:

1
2
输入: 121
输出: true

示例 2:

1
2
3
输入: -121
输出: false
解释: 从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。

示例 3:

1
2
3
输入: 10
输出: false
解释: 从右向左读, 为 01 。因此它不是一个回文数。

进阶:

  • 你能不将整数转为字符串来解决这个问题吗?

题解

用数学方法直接计算出倒数

1
2
3
4
5
6
7
8
9
10
11
12
class Solution {
public boolean isPalindrome(int x) {
if(x < 0) return false;
int rec = 0;
int num = x;
while(num != 0) {
rec = rec * 10 + num % 10;
num /= 10;
}
return rec == x;
}
}

进阶


 评论


博客内容遵循 署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0) 协议

本站使用 Hexo 作为驱动引擎 , 总浏览量为 次 , 总访客数为
载入天数...载入时分秒...