首页 > 其他 > 详细

09 Palindrom number

时间:2021-04-17 10:18:06      阅读:29      评论:0      收藏:0      [点我收藏+]

1. 题目描述

判断一个整数是否是回文数

2. 题解

解法一:使用字符串

将给定的整数转成字符串,只需要这个字符串正序和逆序是否一样即可

无需考虑正负号和翻转整数溢出问题

class Solution {
public:
    bool isPalindrome(int x) {
        string s = to_string(x);
        string rev = s;
        reverse(rev.begin(), rev.end());
        return s == rev;
    }
};

解法二:将整数逆序输出

注意循环结束的条件 这样可以防止反转整数时溢出:

class Solution {
public:
    bool isPalindrome(int x) {
        if(x<0|| (x!=0 &&x%10==0)) return false;
        int sum=0;
        while(x>sum)//* nice!!!
        {
            sum = sum*10+x%10;
            x = x/10;
        }
        return (x==sum)||(x==sum/10);
    }
};

3. 视频讲解

4. 总结

09 Palindrom number

原文:https://www.cnblogs.com/MartinTai/p/14669357.html

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