LeetCode9. 回文数

判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。链接如下https://leetcode-cn.com/problems/palindrome-number/

题解:按照题意不用字符串,直接反转数字,然后判断反转数与原数是否相等 注意一个边界数就好了,在这里错了一次

class Solution {
public:
    bool isPalindrome(int s) {
        if (s < 0) {//负数直接flase
            return false;
        }
        else if (s == 0) {//0直接true
            return true;
        }
        else {
            int temp = s;
            int i = 10;//10的倍数;
            long long s1 = 0;//转换后的数;2147483647int型数据的边界处理好,所以用long long
            while (temp) {
                s1 = s1 * i+(temp % 10);
                temp = temp / 10;
            }
            //cout <<"转换后的为:"<< s1 << endl;
            if (s1 == s) { return true; }
            else return false;
        }
    }
};

 

全部评论

相关推荐

10-07 20:48
门头沟学院 Java
听说改名就会有offer:可能是实习上着班想到后面还要回学校给导师做牛马,看着身边都是21-25的年纪,突然emo了了
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务