LeetCode 7 反转整数
2018-11-07 17:52
302 查看
题目要求:
给定一个 32 位有符号整数,将整数中的数字进行反转。
示例 1:
[code]输入: 123 输出: 321
示例 2:
[code]输入: -123 输出: -321
示例 3:
[code]输入: 120 输出: 21
注意:
假设我们的环境只能存储 32 位有符号整数,其数值范围是 。根据这个假设,如果反转后的整数溢出,则返回 0。
C++代码1:
[code]#define INT_MAX 2147483647 #define INT_MIN (-INT_MAX-1) class Solution { public: int reverse(int x) { long result = 0; while(x) { result = result*10 + x % 10; x /= 10; } return (result > INT_MAX || result < INT_MIN)? 0 : result; } };
结果:
C++代码2:
逻辑和代码1是一样的,只是分步写,比较直观
[code]#define LIMIT_MAX 2147483647 #define LIMIT_MIN (-LIMIT_MAX-1) class Solution { public: int reverse(int x) { bool Is_negative=false; if(x<0) { x=x*(-1); Is_negative=true; } long result=0; while(x) { result=result*10+x%10; x = x/10; } if(Is_negative) { result=result*(-1); if(result<LIMIT_MIN) return 0; } if(result>LIMIT_MAX) { return 0; } return result; } };
结果:
结果也一模一样
阅读更多
相关文章推荐
- LeetCode Reverse Integer 反转整数
- 【LeetCode】- Reverse Integer(将一个整数反转)
- (LeetCode)Reverse Integer --- 反转整数
- LeetCode 7. Reverse Integer(反转整数)
- LeetCode第七题--反转32位的整数
- [leetcode 7] Reverse Integer(整数反转) c函数实现
- leetcode reverse Integer(反转整数)
- leetcode_7. Reverse Integer 反转整数的各个数字
- LeetCode里的7.反转整数问题 Java15行
- LeetCode7——Reverse Integer(将一个整数反转,注意溢出的处理)
- 反转整数 - LeetCode
- LeetCode 7 :Reverse Integer ---- 反转int整数
- [置顶] [LeetCode] Reverse Integer 整数反转
- LeetCode:第7题: 反转整数(reverse-integer)
- LeetCode-7-反转整数-c# 版本
- LeetCode 7. Reverse Integer 整数反转
- Leetcode:Reverse Integer ,整数反转
- [Leetcode] reverse integer 反转整数