码迷,mamicode.com
首页 > 其他好文 > 详细

leetcode-7. Reverse Integer

时间:2017-03-19 01:05:21      阅读:138      评论:0      收藏:0      [点我收藏+]

标签:等于   dig   处理   java   while   example   输入   etc   result   

7. Reverse Integer

Reverse digits of an integer.

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

此题题意为反转一个整数个各个数字,比如123,翻转后为321

java代码:

public class Solution {
    public int reverse(int x) {
        long result =0;
        while(x != 0)
        {
            result = (result*10) + (x%10);
            x = x/10;
        }
        return (int)result;
        
        
    }
}

  但是上面输入的x的值太大返回值就会越界,也就是说没有处理x值太大的情况,下面是处理过后这种异常的代码

java代码:

public class Solution {
    public int reverse(int x) {
        int rev=0;
        int tail=0;
        int newrev=0;
        while(x!=0){
            tail=x%10;
            newrev=rev*10+tail;
            if((newrev-tail)/10!=rev)
            return 0;
            rev=newrev;
            x=x/10;
        }
        return rev;
    }
}

  如果存在越界,那么newrev就不会等于之前的那个值了。不需要flag之类的判断,

leetcode-7. Reverse Integer

标签:等于   dig   处理   java   while   example   输入   etc   result   

原文地址:http://www.cnblogs.com/lcbg/p/6576807.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!