LeetCode 7. Reverse Integer 整数反转
2017-04-01 01:45
459 查看
Reverse digits of an integer.
Example1: x = 123, return 321
Example2: x = -123, return -321
题目解释:将整数进行翻转,
需要注意几个点:
1.如果末尾是0怎么办,10反转就是1
2.带有正负号,-123反转是-321
3.整数越界, 1534236469 反转 9646324351 超出整数上限,返回0
我用的是整数转字符串处理,如果超限try catch捕捉直接返回
再补充一个常规方法
public class Solution {
public int reverse(int x) {
long final_result = 0;
while(x!=0){
final_result = final_result * 10 + x % 10;
x /= 10;
}
if(final_result<Integer.MIN_VALUE||final_result>Integer.MAX_VALUE)
return 0;
return (int) final_result;
}
}扩充一个等级用long存储,与Integer的边界进行比较
Example1: x = 123, return 321
Example2: x = -123, return -321
题目解释:将整数进行翻转,
需要注意几个点:
1.如果末尾是0怎么办,10反转就是1
2.带有正负号,-123反转是-321
3.整数越界, 1534236469 反转 9646324351 超出整数上限,返回0
public int reverse(int x) { int i=0,j; int final_result = 0; String result = x+""; char[] mid = result.toCharArray(); j = mid.length-1; if(mid[0]=='-') i=1; while(i<j){ char ex = mid[i]; mid[i] = mid[j]; mid[j] = ex; i++;j--; } String s = String.valueOf(mid); try{ final_result = Integer.valueOf(s); }catch(Exception e){ //异常处理 } return final_result; }
我用的是整数转字符串处理,如果超限try catch捕捉直接返回
再补充一个常规方法
public class Solution {
public int reverse(int x) {
long final_result = 0;
while(x!=0){
final_result = final_result * 10 + x % 10;
x /= 10;
}
if(final_result<Integer.MIN_VALUE||final_result>Integer.MAX_VALUE)
return 0;
return (int) final_result;
}
}扩充一个等级用long存储,与Integer的边界进行比较
相关文章推荐
- LeetCode 7. Reverse Integer(反转整数)
- leetcode_7. Reverse Integer 反转整数的各个数字
- LeetCode 7. Reverse Integer(整数反转)
- [LeetCode-7] Reverse Integer(反转整数)
- [置顶] [LeetCode] Reverse Integer 整数反转
- 【leetcode】Reverse Integer整数反转----Java代码实现
- 7. Reverse Integer(反转整数)
- leetcode 7. Reverse Integer(C语言,翻转一个整数,判断是否溢出)19
- [leetcode] Reverse Integer 反转一个整数
- [Leetcode] reverse integer 反转整数
- LeetCode--Reverse Integer(整数反转)Python
- leetcode——Reverse Integer 反转整数数字(AC)
- LeetCode7——Reverse Integer(将一个整数反转,注意溢出的处理)
- LeetCode Reverse Integer 反转整数
- 【LeetCode】- Reverse Integer(将一个整数反转)
- [leetcode 7] Reverse Integer(整数反转) c函数实现
- leetcode reverse Integer(反转整数)
- LeetCode 7. Reverse Integer C++--带正负号数字反转
- leetCode 7. Reverse Integer (数字反转) 解题思路与方法
- Leetcode Reverse Integer 反转整数