zoukankan      html  css  js  c++  java
  • 算法---数字序列反转

    //题目:

    给你一个 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

    
    
    class Solution {
        public int reverse(int x) {
            String s=String.valueOf(x);
            boolean isNegative=false;
            if(s.charAt(0)=='-'){
                isNegative=true;
                s = s.substring(1);
            }
            s = new StringBuffer(s).reverse().toString();
            s= isNegative?"-"+s:s;
            int i=0;
            try{
                 i=Integer.parseInt(s);
            }catch(Exception e){
    
            }
           
            return i;
    }
    }

    方法二

    //忽略Java本身的语言性质  这里纯粹的算法

      public int reverse(int x) {
            long n = 0;
            while(x != 0) {
                n = n*10 + x%10;
                x = x/10;
            }
            return (int)n==n? (int)n:0;
        }

    方法一

  • 相关阅读:
    PHP静态
    PHP批量删除
    PHP增删改查
    PHP数据访问
    PHP继承和多态
    PHP封装
    PHP字符串处理和正则表达式
    PHP数组
    PHP函数
    PHP基础
  • 原文地址:https://www.cnblogs.com/orange0/p/15352685.html
Copyright © 2011-2022 走看看