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