设计网站推广公司网页制作,西安最新通知今天,邯郸网站建设,哈尔滨网络公司案例题目描述#xff1a;
给你一个 32 位的有符号整数 x #xff0c;返回将 x 中的数字部分反转后的结果。如果反转后整数超过 32 位的有符号整数的范围 [−231, 231 − 1] #xff0c;就返回 0。假设环境不允许存储 64 位整数#xff08;有符号或无符号#xff09;。示例 1…题目描述
给你一个 32 位的有符号整数 x 返回将 x 中的数字部分反转后的结果。如果反转后整数超过 32 位的有符号整数的范围 [−231, 231 − 1] 就返回 0。假设环境不允许存储 64 位整数有符号或无符号。示例 1输入x 123
输出321
示例 2输入x -123
输出-321
示例 3输入x 120
输出21
示例 4输入x 0
输出0提示-231 x 231 - 1 算法
思路
依次取每位数反转与最大最小值进行比较
代码实现
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;
}