首页 > 其他 > 详细

【Leetcode】Palindrome Number

时间:2015-09-26 12:02:06      阅读:279      评论:0      收藏:0      [点我收藏+]

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

思路:若使用【Leetcode】Reverse Integer 的方法。推断反转后的整数是否与原整数同样,则可能出现溢出情况;又由于题目要求不适用额外空间,能够之间对照整数第一个与最后一个数的值。再依次类推。

class Solution {
public:
    bool isPalindrome(int x) {
        if(x < 0)   return false;
        
        int bitNum = 0;
        int temp = x;
        while(temp != 0)
        {
            temp /= 10;
            bitNum++;
        }
        
        for(int i = 1; i <= bitNum / 2; i++)
        {
            if((x / (int)pow(10, bitNum - i)) % 10 == (x % (int)pow(10, i)) / (int)pow(10, i - 1))
                continue;
            else
                return false;
        }
        
        return true;
    }
};

版权声明:本文博主原创文章,博客,未经同意不得转载。

【Leetcode】Palindrome Number

原文:http://www.cnblogs.com/lcchuguo/p/4840504.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!