zoukankan      html  css  js  c++  java
  • LeetCode刷题-- 整数反转

    题目信息

    给你一个 32 位的有符号整数 x ,返回 x 中每位上的数字反转后的结果。
    
    如果反转后整数超过 32 位的有符号整数的范围 [−231,  231 − 1] ,就返回 0。
    
    假设环境不允许存储 64 位整数(有符号或无符号)。
     
    
    示例 1:
    
    输入:x = 123
    输出:321
    示例 2:
    
    输入:x = -123
    输出:-321
    示例 3:
    输入:x = 120
    输出:21
    示例 4:
    
    输入:x = 0
    输出:0
    
    提示:
    -231 <= x <= 231 - 1
    

    题解代码

    class Solution {
        public int reverse(int x) { 
            // 方法1: 求余取位法
            long n = 0;
            while(x!=0){
                n = n*10 + x%10;
                x = x/10;
            }
            return (int)n ==n ? (int)n : 0 ;
       }
    }
    
    class Solution {
        public int reverse(int x) { 
             // 方法2. 字符串反转
            String st1 = Integer.toString(x);
            int flag = 1;                // 标志位取值为-1
            if(x < 0){
                 flag = -1;              // 标志位取值为-1
                 st1 = st1.substring(1); // 将负号截取掉
           }
          try{
                // 字符串翻转,然后将翻转后的字符串转为数值
                 return Integer.valueOf((new StringBuilder(st1)).reverse().toString()) * flag;   
             }catch(Exception e){
                 return 0 ;
            }
        }
    }
    
    

    声明

    来源:力扣(LeetCode)
    著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
    
  • 相关阅读:
    mapreduce 函数入门 二
    mapreduce 函数入门 一
    Flume+Kafka+Storm+Redis 大数据在线实时分析
    mapReduce 大数据离线分析
    docker 简介
    flume安装使用+根据数据源分类
    hiho 171周
    如何新建一个空的optix工程
    读 Real-Time Rendering 收获
    hiho 1590
  • 原文地址:https://www.cnblogs.com/sinlearn/p/14359235.html
Copyright © 2011-2022 走看看