您的位置:首页 > 其它

Determine whether an integer is a palindrome. Do this without extra space.

2015-06-06 01:10 441 查看

问题重述:

Determine whether an integer is a palindrome. Do this without extra space.

解答

注意3个问题

1)负数是不是回文数字:不是,因为-123321中,没有和符号对称的回文。

2)如果采用倒转整数的方法,倒转后是否超出边界.

3)边界问题:输入的数字是否超出边界。

class Solution {
public:
boolisPalindrome(int x) {

//判断正负

if(x < 0) return false;
x= abs(x);
if(x > 2147483647) return false;
longlong temp = x;
longlong result = 0;
while(temp){
result*= 10;
result+= temp % 10;
temp= temp / 10;

}
if(result > 2147483647) return false;
if((int)result == x) return true;
elsereturn false;
}
};


经过验证,时间效率都符合要求,Accepted.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: