截止到目前我已经写了 600多道算法题,其中部分已经整理成了pdf文档,目前总共有1000多页(并且还会不断的增加),大家可以免费下载
下载链接:​​https://pan.baidu.com/s/1hjwK0ZeRxYGB8lIkbKuQgQ​提取码:6666

【数据结构和算法】LeetCode,初级算法-13整数反转_leetcode

视频讲解


LeetCode,初级算法-整数反转

B站视频合集:​https://www.bilibili.com/video/BV1YY411T7vA​



代码部分

解法一

public int reverse(int x) {
int res = 0;
while (x != 0) {
int tmp = x % 10;
int newRes = res * 10 + tmp;
//如果数字溢出,直接返回0
if ((newRes - tmp) / 10 != res)
return 0;
res = newRes;
x = x / 10;
}
return res;
}

解法二

public int reverse(int x) {
int res = 0;
while (x != 0) {
int tmp = x % 10;
if (x > 0) {//Integer.MAX_VALUE 2147483647
if (res > Integer.MAX_VALUE / 10 )
return 0;
} else {//Integer.MIN_VALUE -2147483648
if (res < Integer.MIN_VALUE / 10)
return 0;
}
res = res * 10 + tmp;
x = x / 10;
}
return res;
}