思路
对于回文数,负数一定不是回文数,小于十的正整数一定是回文数。
因此,只需要对于大于等于十的正整数进行判断是否为回文数。
用整数反转的思路来表示一个数的倒序。
代码
class Solution {
public:
bool isPalindrome(int x)
{
if(x<0)
{
return false;
}
//负数
if(x <= 9 && x >= 0)
{
return true;
}
//0到9的正整数
long sum = 0;
long num=x;
while (num!=0)
{
sum = sum * 10 + num % 10;
num = num / 10;
}
if(sum==x)
{
return true;
}
else
{
return false;
}
}
};
结果
附
尝试使用python中的reversed来表示一个数的倒序,但因为int对象不可迭代,导致失败。
个人感觉这个方法可行,需尝试解决此问题。