leetcode 007 整数反转

给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。
示例 1:
输入: 123
输出: 321
要求:在int 范围内

思路

  • 我们可以一次构建反转整数的一位数字。在这样做的时候,我们可以预先检查向原整数附加另一位数字是否会导致溢出。
class Solution {
    public int reverse(int x) {
        int temp; 
        long num=0;
        int low=(int)-Math.pow(2,31);//确定范围
        int high=(int) Math.pow(2,31)-1; 
        while(x!=0){ 
            temp=x%10;
                if(temp!=0||num!=0){ 
                    num=num*10+temp; //反转该数
                } 
            x/=10; 
        }

      if((num>0&&num<=high)||(num>=low&&num<0)){//判断范围
          return (int)num;
      }
     else
        return 0;
}
}
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 20180919-摘抄自7. 反转整数 给定一个 32 位有符号整数,将整数中的数字进行反转。 示例 1: 输入:...
    moralok阅读 465评论 0 0
  • 给定一个 32 位有符号整数,将整数中的数字进行反转。 示例 1: 输入: 123输出: 321示例 2: 输入:...
    bocsoft阅读 900评论 0 0
  • 2018.01.15 星期一 多云 新的一周又开始了,孩子上学又开始跟着忙碌!由于她爸身体不舒服请假了,上午...
    团团圆圆妈妈阅读 155评论 0 0
  • 林语堂说人生幸福,无非四件事: 一是睡在自家床上;二是吃父母做的饭菜;三是听爱人讲情话;四是跟孩子做游...
    半束微光阅读 594评论 0 0
  • 一、模态对话框:垄断了用户输入,当一个模态对话框打开时,用户只能与该对话框交互,而其他用户界面对象收不到输入信息。...
    天涯_DHY阅读 2,339评论 1 0