加入收藏 | 设为首页 | 会员中心 | 我要投稿 | RSS
您当前的位置:首页 > 公告

给定一个 32 位有符号整数,将整数中的数字进行反转。

时间:2024-11-13 13:44:53  来源:http://www.baidu.com/  作者:亲卫队请问

public int reverseInteger(int x) {

if (x <= Integer.MIN_VALUE || x >= Integer.MAX_Value) {

return 0; // 如果输入的整数超出范围,直接返回 0

}

int reversedNum = 0; // 用于存储反转后的整数

int count = 0; // 用于记录反转过程中的位数

while (x != 0) { // 循环反转每一位数字

count++; // 位数递增

if (count == 10) { // 如果反转过程中位数达到上限(即反转后的数可能溢出)

if (x < 0 && reversedNum >= Integer.MAX_VALUE / 10) { // 如果是负数且反转后的数即将溢出,返回 0

return 0;

}

}

reversedNum = reversedNum 10 + x % 10; // 将当前位加入反转结果中

x /= 10; // 移动到下一位数字进行反转操作

}

return reversedNum; // 返回反转后的整数结果

}

来顶一下
返回首页
返回首页
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表
推荐资讯
相关文章
    无相关信息
栏目更新
栏目热门