leetcode第三题-----Palindrome Number

来源:互联网 发布:影视特效需要编程吗 编辑:程序博客网 时间:2024/06/04 20:11

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


解法:问题是判断一个数是否回文数。回文数的特征是它从头到尾读和从尾到头读都是一样的。我的思路是,用两个临时变量,一个存储从头到尾读的数,另外一个存储从尾到头读的数,如果这两个值从头到尾一模一样的话,那么这个数就是回文数,否则,不是。


class Solution {
public:
    bool isPalindrome(long int x) {
        if (x < 0)
            return false;//排除负数情况
        int digit = 1;//判断X的位数
        long int temp = x;
        long int temp1 = x;
        long int temp2 = x;//三个临时变量 用来存储值
        
        while(temp/10 != 0) {
            temp = temp/10;
            digit++;
        }//计算位数
        temp = x;
        
        for (int i = 0; i < digit/2; i++) {
            int tail = temp%10;获取尾部的数
            long int delete_ = 1;
            temp = temp/10;
            for (int j = digit; j > i+1; j--) {
                temp1 = temp1/10;
                delete_ = delete_*10;
            }
            int head = temp1;//获取头部的数
            temp1 = temp2-delete_*head;
            temp2 = temp1;
            if(head != tail)
                return false;
        }
        return true;
    }
};

阅读全文
'); })();
0 0
原创粉丝点击
热门IT博客
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 手指骨头断了怎么办 手指断了怎么办止痛 外地儿童怎么办医保卡 劳务派遣证年检怎么办 cmos密码忘记了怎么办 主板密码忘记了怎么办 安全b证书过期怎么办 电脑上没有光驱怎么办 win7光驱不显示怎么办 c 源代码删除了怎么办 excel密码忘记了怎么办 不履行离婚协议怎么办 买卖协议丢了怎么办 保研找不到导师怎么办 被外星人拐走了怎么办 宝宝踹的厉害怎么办 酸奶发酵过头了怎么办 84消毒液洗手了怎么办 消毒液喷多了怎么办 消字号批文怎么办手续 买到三无酱油怎么办 买到三无化妆品怎么办 上海icp备案证怎么办 孕妇下面痒怎么办啊 孕妇脸过敏红肿怎么办 孕妇身上痒是怎么办 超级跑跑倒闭了怎么办 坐飞机去晚了怎么办 刷卡机拨号失败怎么办 刷卡机没有信号怎么办 会员卡不给退怎么办 车辆注销后车怎么办 汽车没有前雾灯怎么办 面包车电瓶没电怎么办 面包车电瓶亏电怎么办 平板充不了电怎么办 自卸车大梁变形怎么办 车子里有灰尘怎么办 车里灰尘太大怎么办 车内灰尘重怎么办 冰箱冬天不用了怎么办