zoukankan      html  css  js  c++  java
  • 整数反转---简单

    题目:

      给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。

    示例:

    示例 1:

    输入: 123
    输出: 321
    

     示例 2:

    输入: -123
    输出: -321
    

    示例 3:

    输入: 120
    输出: 21

    思路:

      先统计出长度,然后根据位数乘相应的权。如下:

    class Solution {
    public:
        int reverse(int x) {
            int c=x;
            int length=1;
            while(c/10!=0)
            {
                length++;
                c/=10;
            }
            long sum=0;
            while(length)
            {
                int n=x%10;
                sum+=n*std::pow(10,length-1);
                x/=10;
                length--;
            }
            if(sum>INT_MAX||sum<INT_MIN)
                return 0;
            return sum;
        }
    };

    简介的做法:

    class Solution {
    public:
        int reverse(int x) {
            long r = 0;
            while(x != 0){
                int m = x % 10;
                x = x / 10;
                r = r * 10 + m;
            }
            if(r > gMAX || r < gMIN)
                return 0;
            return r;
        }
    };
  • 相关阅读:
    ‘随意’不是个好词,‘用心’才是
    servlet
    tomcat服务器
    http协议
    jdbc(Java数据库连接)
    dbcp和druid(数据库连接池)
    关于GitHub
    冒泡和递归
    python内置函数
    python四
  • 原文地址:https://www.cnblogs.com/manch1n/p/10319918.html
Copyright © 2011-2022 走看看