Reverse digits of an integer.

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

解题思路:
将数字翻转并不难,可以转成String类型翻转,也可以逐位翻转,本题涉及到的主要是边界和溢出问题,使用Long或者BigInteger即可解决。

题目不难:

JAVA实现如下:

public class Solution {
static public int reverse(int x) {
if(x==0||x==-2147483648)return 0;
boolean isNagetive=false;
if(x<0){
isNagetive=true;
x=-x;
}
long result=0;
while(x!=0){
result*=10;
result+=x%10;
x/=10;
}
final int INT_MAX=0x7fffffff;
if((result-INT_MAX)>0)
return 0; if(isNagetive)result=-result;
return (int)result;
}
}

C++实现如下:

 #include<algorithm>
using namespace std;
class Solution {
public:
int reverse(int x) {
if (x == INT_MIN)
return ;
bool isNeg = x < ;
x = abs(x);
long res = ;
while (x) {
res = res * + x % ;
if (res > INT_MAX)
return ;
x /= ;
}
return isNeg ? -(int)res: (int)res;
}
};

最新文章

  1. ABP框架理论研究总结(典藏版)
  2. Block Markov Coding &amp; Decoding
  3. win7 audio repeater 虚拟声卡 屏幕录像专家
  4. ExecutorService中submit和execute的区别(转)
  5. ecshop 给商品随机添加评论
  6. 关于谷歌浏览器 表单元素获取焦点后自动增加外边线的问题解决CSS代码
  7. Python基础(3)--列表和元组
  8. cf584a(水题)
  9. 最短JS判断是否为IE6(IE的写法) (转)
  10. Bootstrap入门(十)组件4:按钮组与下拉菜单结合
  11. 分布式开放消息系统(RocketMQ)的原理与实践(转)
  12. Sublime Text3使用指南
  13. 再学习之Spring(面向切面编程)
  14. python3全栈开发-面向对象的三大特性(继承,多态,封装)之继承
  15. php面向对象三大特征
  16. onclick或者其他事件在部分移动端无效的问题
  17. Ubuntu 默认启动到命令行 12.04
  18. 08 - JavaSE之IO流
  19. 使用jstl方式替换服务器请求地址
  20. 【转载】TypeScript学习笔记——var与let

热门文章

  1. 19.Android之文件存储方法学习
  2. POJ1011 Sticks
  3. 苹果开发者账号如何多人协作进行开发和真机调试XCode
  4. TYVJ1939 玉蟾宫
  5. tomcat7登录账户配置
  6. List&lt;T&gt; 序列化与反序列化
  7. spark中操作hdfs
  8. P问题、NP问题、NPC问题、NP难问题的概念
  9. C# ManualResetEvent的使用
  10. Lex和Yacc入门