zoukankan      html  css  js  c++  java
  • No.7 Reverse Integer

    No.7 Reverse Integer

    Reverse digits of an integer.

    Example1: x = 123, return 321
    Example2: x = -123, return -321

    反转数字:将对10整除和取余的结果逆置即可
    难点即细节:溢出。符号
    疑问:溢出的,怎么处理?——提交一次出错后,知道应该是返回0

    为防溢出,提升类型为long long,注意判断INT_MAX、INT_MIN

     1 #include "stdafx.h"
     2 #include <string>
     3 #include <iostream>
     4 #include <unordered_map>
     5 
     6 using namespace std;
     7 
     8 
     9 class Solution
    10 {
    11 public:
    12     int    reverse(int x)
    13     {//反转数字:将对10整除和取余的结果逆置即可
    14      //难点即细节:溢出。符号
    15      //疑问:溢出的,怎么处理?——提交一次出错后,知道应该是返回0
    16 
    17         int sign = 1;//记录符号:1为正、-1为负
    18         long long convert = x;
    19         long long result = 0;
    20         if(x<0)
    21         {
    22             sign = -1;
    23             convert = -convert;
    24         }
    25 
    26         while(convert != 0)
    27         {
    28             result = result*10 + convert%10;
    29             convert /= 10;
    30         }
    31 
    32         result = (sign==-1) ? -result : result;    
    33         //这样做,其实挺取巧,但是,效率还不错!!!
    34         if(result > INT_MAX)
    35         //   return INT_MAX;
    36             return 0;//提交一次之后得到的教训!!!
    37         if(result < INT_MIN)
    38         //    return INT_MIN;
    39             return 0;//提交一次之后得到的教训!!!
    40         return result;
    41     }
    42 };
    43 
    44 
    45 int main()
    46 {
    47     Solution sol;
    48 
    49     int test[] = {123,-123,000,INT_MIN,1234567890,1234567890123,INT_MAX};
    50     //对于反转之后明显越界的,置为INT_MAX或INT_MIN
    51 
    52     for(auto const &i : test)
    53         cout << i <<" : "<< sol.reverse(i)<<endl;
    54     return 0;
    55 }
  • 相关阅读:
    Gevent高并发网络库精解
    python多线程参考文章
    python多线程
    进程与线程
    golang 微服务以及相关web框架
    微服务实战:从架构到发布
    python 常用库收集
    总结数据科学家常用的Python库
    20个最有用的Python数据科学库
    自然语言处理的发展历程
  • 原文地址:https://www.cnblogs.com/dreamrun/p/4536931.html
Copyright © 2011-2022 走看看