首页 > 其他 > 详细

LeetCode 7 Reverse Integer(反转数字)

时间:2015-12-25 20:51:24      阅读:221      评论:0      收藏:0      [点我收藏+]

题目来源:https://leetcode.com/problems/reverse-integer/

 

Reverse digits of an integer.

 

Example1: x = 123, return 321
Example2: x = -123, return -321

解题思路:

其实这道题看起来非常简单,要实现也是几行代码的事。但是有个小问题容易被忽略,就是边界问题。什么意思呢?如果我们输入的整数超出了int的表达范围,这个问题要怎么解决呢?
用比int更大的数据类型存储我们转换后的结果,然后与int的边界比较,超出了边界则返回0。
Java实现:
 1 public class Solution {
 2     public int reverse(int x) {
 3         long reverse = 0;
 4         
 5         while(x != 0){
 6             reverse = reverse * 10 + x % 10;
 7             if(reverse > Integer.MAX_VALUE || reverse < Integer.MIN_VALUE)
 8                 return 0;
 9             x = x / 10;
10         }
11         return (int)reverse;
12     }
13 }

 

 

LeetCode 7 Reverse Integer(反转数字)

原文:http://www.cnblogs.com/zpfbuaa/p/5076819.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!