码迷,mamicode.com
首页 > 其他好文 > 详细

LeetCode问题9

时间:2017-09-29 00:12:20      阅读:140      评论:0      收藏:0      [点我收藏+]

标签:code   自己   tco   style   回文   min   extra   rmi   计算   

Palindrome Number

问题描述如下:

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

关键在不占用额外的空间的情况下生成它的回文序列,然后作差即可。

如果相等,说明回文,如果不相等说明不是回文。

注意点:1、负数不是回文序列;2、在生成整数的回文如果计算过程溢出,当然不是回文(回文序列与自己相同当然是不会溢出的)。

问题难度Easy,代码如下:

class Solution {
public:
    bool isPalindrome(int x) {
        if(x==INT_MAX||x==INT_MIN)
            return false;
        else if(x<0)
            return false;
        int xsave=x;
        int px=0;
        while(x!=0)
        {
            if(px<INT_MAX/10)
            {
                px=px*10+x%10;
                x/=10;
            }
            else
                return false;
        }
        if(px==xsave)
            return true;
        else
            return false;
    }
};

时间消耗仅仅超过30%的提交者。

LeetCode问题9

标签:code   自己   tco   style   回文   min   extra   rmi   计算   

原文地址:http://www.cnblogs.com/Einsler/p/7608845.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!