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

lintcode 容易题:reverse integer 颠倒整数

时间:2015-10-18 21:36:25      阅读:321      评论:0      收藏:0      [点我收藏+]

标签:

题目:

将一个整数中的数字进行颠倒,当颠倒后的整数溢出时,返回 0 (标记为 32 位整数)。

样例

给定 x = 123,返回 321

给定 x = -123,返回 -321

解题:

直接反转,越界处理好炒蛋

Java程序:

技术分享
public class Solution {
    /**
     * @param n the integer to be reversed
     * @return the reversed integer
     */
    public int reverseInteger(int n) {
        // Write your code here
        int MAX = Integer.MAX_VALUE;
        if(n>=0){
            int res = 0;
            int num = n;
            while(n!=0){
                if(res>MAX/10) return 0;
                res =res *10 + n%10;
                n = n/10;
            }
            return res;
        }else{
            int res = reverseInteger(-n);
            return -res;
        }
        
    }
}
View Code

总耗时: 16030 ms

Python程序:

 还没好,一直Pending,Python不需要处理越界问题

技术分享
class Solution:
    # @param {int} n the integer to be reversed
    # @return {int} the reversed integer
    def reverseInteger(self, n):
        # Write your code here
        flag = False
        if n<0:
            n = -n
            flag = True
        res = 0
        while n!=0:
            res = res * 10 + n%10;
            n = n/10
        if flag:
            return -res
        else:
            return res 
View Code

 

lintcode 容易题:reverse integer 颠倒整数

标签:

原文地址:http://www.cnblogs.com/theskulls/p/4890196.html

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