LeetCode 7 整数反转[数学] HERODING的LeetCode之路

Posted HERODING23

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LeetCode 7 整数反转[数学] HERODING的LeetCode之路相关的知识,希望对你有一定的参考价值。

在这里插入图片描述
解题思路:
本题考察的是如何获取每个位数,然后翻转过来,但是关键在于如何判断是否越界,那么这就可以利用到int 和 long 的区别解决,long在64位机子中是8字节,而int是4字节,所以long在超过2的31次方之后不会越界,而int会,这时候对比结果是否相等就可以得出结论了,代码如下:

class Solution {
public:
    int reverse(int x) {
        long n = 0;
        // != 可以一起处理负数
        while(x != 0) {
            n = n * 10 + x % 10;
            x /= 10;
        }
        // 巧妙应用long 8字节的优势
        return (int)n == n ? n : 0;
    }
};


/*作者:heroding
链接:https://leetcode-cn.com/problems/reverse-integer/solution/cqiao-jie-by-heroding-tgbt/
来源:力扣(LeetCode)
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。*/

以上是关于LeetCode 7 整数反转[数学] HERODING的LeetCode之路的主要内容,如果未能解决你的问题,请参考以下文章

LeetCode 7. 整数反转

小Y学算法⚡️每日LeetCode打卡⚡️——7.整数反转

7. 反转整数 [leetcode 7: Reverse Integer]

7. 反转整数 [leetcode 7: Reverse Integer]

LeetCode 7. 整数反转

LeetCode题解索引