Problem:Palindrome Number
Question:Determine whether an integer is a palindrome. Do this without extra space.
思路
题目要求在不使用多余空间的情况下判断一个整数是否是回文的(意即正着数和倒着数是一样的)。
直接用一个循环,每次取最高位和最低位比较,如果不相等就不用向下判断了,如果相等就继续判断,总会判断出来是否是回文的。
解题代码
class Solution {
public:
bool isPalindrome(int x) {
if(x < 0) return false;
int div = 1;
while (x/div >= 10) {
div *= 10;
}
while (x != 0) {
if (x%10 != x/div) return false;
x = (x%div) / 10;
div = div / 100;
}
return true;
}
};