- 当判断的是数字时,可以利用回文串的镜像原理判断,
c++ 代码
public bool isPalindrome(int x){
//当 x 小于 0 或是 10的整数倍时,不是回文数
if(x < 0 || (x % 10 == 0 && x != 0)
return false;
int res = 0;
while(x > ans){
res = res * 10 + x % 10;
x /= 10;
}
//当 x 时有奇数位数的回文数子时, x == res / 10
return x == ans || x == res/ 10;
}
java代码
public boolean isPalindrome(int x){
//当 x 小于 0 或是 10的整数倍时,不是回文数
if(x < 0 || (x % 10 == 0 && x != 0)
return false;
int res = 0;
while(x > ans){
res = res * 10 + x % 10;
x /= 10;
}
//当 x 时有奇数位数的回文数子时, x == res / 10
return x == ans || x == res/ 10;
}