leetcode 整数反转 简单

  

代码:

class Solution {
public:
    int reverse(int x) {
        int rev = 0;
        while (x != 0) {
            if (rev < INT_MIN / 10 || rev > INT_MAX / 10) {
                return 0;
            }
            int digit = x % 10;
            x /= 10;
            rev = rev * 10 + digit;
        }
        return rev;
    }
};
View Code

主要是一点:拿正数为例,为什么不用考虑 rev == INT_MAX / 10 && x % 10 > INT_MAX % 10 的情况。。

由于 x 本身的限制,当 x 的位数与 INT_MAX 相同时,首位肯定是 <= 2,所以dddd

posted @ 2021-07-21 22:42  rookie_Acmer  阅读(25)  评论(0)    收藏  举报