leetcode-7-整数反转

leetcode-7-整数反转

分析题目

  1. int number_reverse作为结果返回
  2. 使用" / "求出除10后的值记为x,使用" % "求出除10后的余数记为j
  3. 循环直到x==0
  4. 循环过程需要判断number_reverse是否会超出Integer.MAX_VALUE,或者小于Integer.MIN_VALUE
class Solution {
    public int reverse(int x) {
        int number_reverse = 0;
        int j = 0;
        while(x !=0 ){
            j = x%10;
            x = x/10;
            if(number_reverse > Integer.MAX_VALUE/10 || (number_reverse == Integer.MAX_VALUE / 10 && j > Integer.MAX_VALUE % 10))
            return 0;
            if(number_reverse < Integer.MIN_VALUE/10 || (number_reverse == Integer.MIN_VALUE / 10 && j < Integer.MIN_VALUE % 10))
            return 0;
            number_reverse = number_reverse*10 + j;        
        }        
    return number_reverse;
    }
}

收获

  • 使用Integer.MAX_VALUE和Integer.MIN_VALUE可以简化判断。
  • 注意边界条件的判断。
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 题目描述: 给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。 示例1: 输入: 123 输...
    小刘一定要努力阅读 715评论 0 0
  • Description 给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。 示例 1:输入:...
    狂吃不胖温同学阅读 5,271评论 0 1
  • 7.整数反转 给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。 示例 1: 输入: 123...
    跟着风行走阅读 2,726评论 0 1
  • 培训简摘 我 主题,特点,语言 作者为什么写燕子?他写了燕子的哪些特点?他为什么这样写?结构上为什么要这样编排? ...
    一花一世界1230阅读 2,325评论 0 0
  • 她的脸 胜过川剧 不需一抹就变 本来目无表情的叙述 瞬间不耐烦的回答 转眼面如桃花的迎接 原来她还是真的美 在笑的...
    悦读_fa1f阅读 1,066评论 3 3