回文数
判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。
思路
如果x是回文数,有:
1.如果x的位数是双数,那么while(x > half)
结束条件是x == half
2.如果x的位数是单数,那么while(x > half)
结束条件是x < half
且haft/10==x
class Solution {
public:
bool isPalindrome(int x) {
if(x < 0 || (x%10 == 0 && x != 0))
return false;
int half = 0;
while(x > half){
half = half*10 + x%10;
x /= 10;
}
return x == half || x == half/10;
}
};
网友评论