一、 题目 反转整数。
例1:X =123,则返回321
例2:X =-123,-321返回
注意:
1、如果整数的末位数是0,应该输出是什么?即,例如10,100。
2、假设输入的是一个32位的整数,则1000000003反转会发生溢出
二、分析
其实我最初想到的是itoa()和atoi()直接就可以搞定,后来发现不行(可能是我没想到怎么做)
后来发现,其实我们只需要重新构造这个数就行了,也就是每次都取得x的末位,将它转化到我们求的数的高位,依次对应,可得解
class Solution { public: int reverse(int x) { int flag=0; while(x){ flag=flag*10+x%10; x/=10; } return flag; } }
原文地址:http://blog.csdn.net/zzucsliang/article/details/39761409