LeetCode之路——Reverse Integer
来源:互联网 发布:网络批发城 编辑:程序博客网 时间:2024/06/05 19:01
题目要求:将一个整数倒置,若溢出则返回0;
思路:我的思路是先将整数转成字符串,然后字符串倒置,用一个标志记录正负,先将传入值取绝对值,最后再加上符号。
贴上代码:
class Solution { public int reverse(int x) { if(x>Integer.MAX_VALUE || x<Integer.MIN_VALUE) return 0; boolean flag=false;//当flag为false时,x为正数,反之为负数 if(x<0) { flag=true; x=Math.abs(x); } String res = Integer.toString(x); //System.out.println(res); String solu =""; int i=0,len=res.length(); for(i=len-1;i>=0;i--) { solu+=res.charAt(i); } double j=Double.parseDouble(solu); if(j>Integer.MAX_VALUE || j<Integer.MIN_VALUE) return 0; i=(int)j; if(flag) { return -i; } return i; }}
网上大神代码:
class Solution_ReverseInteger { public int reverse(int x) { int result=0; while(x!=0) { int tail =x%10; int newResult = result*10+tail; if((newResult-result)/10!=result)//若不成立則溢出 return 0; result=newResult; x/=10; } return result; }}
总结:不要忽视任意细节,考虑到各种情况,从《信息安全》这门课学习到:暴露给用户可输入的接口必须都要经过输入过滤,永远都要想象用户是恶意的!
0 0
- LeetCode之路——Reverse Integer
- leetcode—Reverse Integer
- LeetCode 之 Reverse Integer — C++ 实现
- LeetCode——Reverse Integer
- LeetCode——Reverse Integer
- LeetCode——Reverse Integer
- LeetCode——Reverse Integer
- leetcode——Reverse Integer
- leetcode之Reverse Integer
- LeetCode 之 Reverse Integer
- LeetCode之Reverse Integer
- LeetCode之Reverse Integer
- LeetCode之Reverse Integer
- Leetcode之Reverse Integer
- leetcode之Reverse Integer
- LeetCode之Reverse Integer
- 【Leetcode】之Reverse Integer
- LeetCode 之 Reverse Integer
- PHP+JavaScript 实现图片无刷新上传
- mssql从入门到';drop table --
- 类似QQ控件动态输入框
- xcache 的安装及配置文件参数解释
- zoj 3279 ants 线段树+单点更新+查询下标
- LeetCode之路——Reverse Integer
- bzoj1211 prufer编码
- python装饰器-限制函数调用次数(10s调用一次)
- .NET 第六章 上机四 多态计算机
- git 笔记
- Leetcode-Algorithms Single Number
- ACM常用输入输出方式
- apache所有项目下载地址
- Java创建线程的三种方法比较及用法