1. 首页
  2. 软件开发
  3. day-56 整数反转

day-56 整数反转

  • 发布于 2024-09-26
  • 1 次阅读


思路
首先将整数变为字符串,然后判断正负,如果是负数把负号去掉,再将字符串从后向前遍历,遍历过程中用一个long型记录转换后的数字

解题过程
最后判断转换后的数是否超出整型的边界即可

Code

class Solution {

    public int reverse(int x) {

        String s=Integer.toString(x);
        boolean flag=true;
        if(s.charAt(0)=='-'){

            s=s.substring(1,s.length());
            flag=false;
        }
        long ans=0;
        int id=s.length()-1;
        while(id>=0){

            ans=ans*10+(s.charAt(id)-'0');
            id--;
        }
        if(flag){

            if(ans>Integer.MAX_VALUE)return 0;
            else return (int)ans;
        }else{

            if(-1*ans<Integer.MIN_VALUE)return 0;
            else{

                ans=ans*-1;
                return (int)ans;
            } 
        }
    }
}

作者:菜卷
链接:https://leetcode.cn/problems/reverse-integer/solutions/2923353/zheng-shu-fan-zhuan-by-ashi-jian-chong-d-uepn/
来源:力扣(LeetCode)
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

原文链接: https://blog.csdn.net/qq_53568730/article/details/142375547