LeetCode刷题:第七题 整数翻转 第九题 回文数

2023-06-14,,

假设我们的环境只能存储得下 32 位的有符号整数,则其数值范围为 [−231,  231 − 1]。请根据这个假设,如果反转后整数溢出那么就返回 0。

代码如下:

 int reverse(int x) {
int temp = x, num = ;
while (x) {
if (num > INT32_MAX / || (num == INT32_MAX / && (x % ) > )) {
return ;
}
if (num < INT32_MIN / || (num == INT32_MIN / && (x % ) < -)) {
return ;
}
num = num * + x % ;
x /= ;
}
return num;
}
代码如下:
 bool isPalindrome(int x) {
int temp = x, num = ;
while (x) {
if (x < ) {
return false;
}
if (num > INT32_MAX / || (num == INT32_MAX / && x % > )) {
return false;
}
if (num < INT32_MIN / || (num == INT32_MIN / && x % < -)) {
return false;
}
num = num * + x % ;
x /= ;
}
return temp == num;
}

这两道题都是整数翻转相关,主要代码就两行:

 num = num *  + x % ;
x /= ;

LeetCode刷题:第七题 整数翻转 第九题 回文数的相关教程结束。

《LeetCode刷题:第七题 整数翻转 第九题 回文数.doc》

下载本文的Word格式文档,以方便收藏与打印。