NC57 反转数字

  算法   2分钟   690浏览   0评论

题目链接:https://www.nowcoder.com/practice/1a3de8b83d12437aa05694b90e02f47a

题目描述

给定一个32位的有符号整数num,将num中的数字部分反转,最后返回反转的结果

  • 只反转数字部分,符号位部分不反转
  • 反转后整数num超过 32 位的有符号整数的范围 [−231, 231 − 1] ,返回 0
  • 假设本题不允许存储 64 位整数(有符号或无符号,即C++不能使用long long ,Java不能使用long等)

数据范围:

-2^31 <= x <= 2^31-1

示例 1:

输入:12
返回值:21

示例 2:

输入:-123
返回值:-321

示例 3:

输入:10
返回值:1

示例 4:

输入:1147483649
返回值:0

解题代码

import java.util.*;


public class Solution {
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 
     * @param x int整型 
     * @return int整型
     */
    public int reverse (int x) {
        // write code here
        long res = 0;
        while (x != 0) {
            res = res * 10 + x % 10;
            x /= 10;
        }
        return (int) res == res ? (int) res : 0;
    }
}

如果你觉得文章对你有帮助,那就请作者喝杯咖啡吧☕
微信
支付宝
  0 条评论