LC 整数反转

LC 整数反转


给你一个 32 位的有符号整数 x ,返回将 x 中的数字部分反转后的结果。
LC 整数反转

【代码1.0】

class Solution {
    public int reverse(int x) {
        if (x==0)
            return 0;
        int flag = 1;
        if (x < 0)
        {
            flag = -1;
            x = -x;
        }
        int temp = x;
        int length=0;
        while (temp > 0)
        {
            temp/=10;
            length++;
        }

        long sum= 0;
        for (int i = 0; i < length; i++)
        {
            temp = x%10;
            x = x/10;
            sum += temp*Math.pow(10,length - 1 - i);
        }
        
        return (int)sum == sum ? (int)sum*flag : 0;
    }
}

LC 整数反转
【代码2.0】

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

LC 整数反转

上一篇:解决Visual Studio2015生成程序时的错误: "LC.EXE 已退出,代码为-1"


下一篇:动态规划问题(十四)自动换行问题