当前位置: 首页 > news >正文

java练习(35)

ps:题目来自力扣

整数反转

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

如果反转后整数超过 32 位的有符号整数的范围 [−231,  231 − 1] ,就返回 0。

假设环境不允许存储 64 位整数(有符号或无符号)。

class Solution {
    public int reverse(int x) {
        int reversed = 0;
        while (x != 0) {
            // 取出 x 的最后一位数字
            int digit = x % 10;
            // 将 x 去掉最后一位数字
            x /= 10;

            // 在添加新数字之前检查是否会溢出
            if (reversed > Integer.MAX_VALUE / 10 || (reversed == Integer.MAX_VALUE / 10 && digit > 7)) {
                return 0;
            }
            if (reversed < Integer.MIN_VALUE / 10 || (reversed == Integer.MIN_VALUE / 10 && digit < -8)) {
                return 0;
            }

            // 将取出的数字添加到 reversed 中
            reversed = reversed * 10 + digit;
        }
        return reversed;
    }
}

相关文章:

  • 如何用好 DeepSeek 工具:入门指南
  • 【CSP/信奥赛通关课(一):C++语法基础】
  • PrimeTime:工具简介
  • 算法模板(二分法开区间模板,二分法闭区间模板)
  • 【华三】STP的角色选举(一文讲透)
  • 市场趋势中突破确认的多维度判断方法
  • 【简历优化】性能调优 — 编程性能调优篇
  • Linux远程kill进程及$处理
  • java练习(36)
  • 如何在 React 中测试高阶组件?
  • python: SQLAlchemy (ORM) Simple example using mysql in Ubuntu 24.04
  • Docker挂载数据显式挂载和隐式挂载的区别
  • DeepSeek掘金——VSCode 接入DeepSeek V3大模型,附使用说明
  • ubuntu ffmpeg 安装踩坑
  • Liunx(CentOS-6-x86_64)系统安装MySql(5.6.50)
  • 基于灾害链动仿真分析路径
  • 为AI聊天工具添加一个知识系统 之115 详细设计之56 知识表征 之2
  • Linux修改主机名称
  • c#编程:学习Linq,重几个简单示例开始
  • logging-operator 部署fluentd-bit日志报kubernetes链接错误
  • 织梦网站栏目管理空白/seo网站推广方法
  • 网站后台登陆口/杭州网络
  • 网站群建设的必要性/sem和seo有什么区别
  • 开个网站做英语培训/网站自然排名工具
  • 怎么用linux做网站服务器/产品销售推广方案
  • 济南网站设计公司富/百度seo快速排名优化服务