20.07.15 LeetCode7. 整数反转
Posted γGama
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了20.07.15 LeetCode7. 整数反转相关的知识,希望对你有一定的参考价值。
1 给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。 2 3 示例 1: 4 5 输入: 123 6 输出: 321 7 示例 2: 8 9 输入: -123 10 输出: -321 11 示例 3: 12 13 输入: 120 14 输出: 21 15 注意: 16 17 假设我们的环境只能存储得下 32 位的有符号整数,则其数值范围为 [−231, 231 − 1]。请根据这个假设,如果反转后整数溢出那么就返回 0。 18 19 来源:力扣(LeetCode) 20 链接:https://leetcode-cn.com/problems/reverse-integer
题解:
1 class Solution {
2 public:
3 int reverse(int x) {
4 if(x/10==0)
5 return x;
6 int y = 0;
7 while(x)
8 {
9 if(y> INT_MAX/10 || y < INT_MIN/10) //判断溢出
//因为下面有y*10的操作,如果是y<max则要在运算后判断,但判断溢出一般都是写在头部,故以此写法。
10 return 0;
11 y = y*10;
12 y=y+x%10;
13 x = x/10;
14 }
15 return y;
16 }
17 };
以上是关于20.07.15 LeetCode7. 整数反转的主要内容,如果未能解决你的问题,请参考以下文章