Leetcode--7. 整数反转
给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。
示例 1:
输入: 123
输出: 321
示例 2:
输入: -123
输出: -321
示例 3:
输入: 120
输出: 21
注意:
假设我们的环境只能存储得下 32 位的有符号整数,则其数值范围为 [−231, 231 − 1]。请根据这个假设,如果反转后整数溢出那么就返回 0。
主要是判断是否溢出,例如1234567898直接反转肯定溢出,少加一位对最后一位进行判断
提交的代码:
class Solution {
public int reverse(int x) {
int[] nums = new int[31];
int i=0,flag=0,j,sum=0;
int a = 2147483647;
if(x<0)
{
x=-x;
flag=1;
}
while(x>0)
{
nums[i++]=x%10;
x/=10;
}
for(j=0;j<i;j++)
{
sum=sum*10+nums[j];
if((sum>a/10&&j!=i-1)||(sum==a/10&&nums[j+1]>7&&flag==0))
{
return 0;
}
if((sum>a/10&&j!=i-1)||(sum==a/10&&nums[j+1]>8&&flag==1))
{
return 0;
}
}
if(flag==1)
{
sum=-sum;
}
return sum;
}
}
完整的代码:
import java.util.Scanner;
public class Solution7 {
public static int reverse(int x) {
int[] nums = new int[31];
int i=0,flag=0,j,sum=0;
int a = 2147483647;
if(x<0)
{
x=-x;
flag=1;
}
while(x>0)
{
nums[i++]=x%10;
x/=10;
}
for(j=0;j<i;j++)
{
sum=sum*10+nums[j];
if((sum>a/10&&j!=i-1)||(sum==a/10&&nums[j+1]>7&&flag==0))
{
return 0;
}
if((sum>a/10&&j!=i-1)||(sum==a/10&&nums[j+1]>8&&flag==1))
{
return 0;
}
}
if(flag==1)
{
sum=-sum;
}
return sum;
}
public static void main(String[] args)
{
int x;
Scanner sc = new Scanner(System.in);
x = sc.nextInt();
System.out.println(reverse(x));
}
}
Leetcode--7. 整数反转相关推荐
- [模拟|数位] leetcode 7 整数反转
[模拟|数位] leetcode 7 整数反转 1.题目 题目链接 给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转. 示例 1: 输入: 123 输出: 321 示例 2: 输 ...
- 【LeetCode】整数反转
package leetcode.editor.cn;//给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转. // // 示例 1: // // 输入: 123 //输出: 32 ...
- 53 -leetcode 7. 整数反转
//看看人家 写的多简单 INT_MIN INT_MAX 2^31 -1 -2^31 7. 整数反转 class Solution {public:int reverse(int x) {int fh ...
- LeetCode NO7. 整数反转
给你一个 32 位的有符号整数 x ,返回将 x 中的数字部分反转后的结果. 如果反转后整数超过 32 位的有符号整数的范围 [−231, 231 − 1] ,就返回 0. 假设环境不允许存储 64 ...
- php 反转一个整数,LeetCode PHP 整数反转
友情提示:此篇文章大约需要阅读 2分钟16秒,不足之处请多指教,感谢你的阅读. 题目 给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转. 示例 1: 输入: 123 输出: 32 ...
- LeetCode 7. 整数反转 Reverse Integer 官网答案的条件判定的一点思考
关于solution中的公式不知道是否清楚,在刚开始看的时候认为条件之一应当是rev<(Integer.min-pop)/10这个条件,因为rev*10+pop>Integer.min时才 ...
- C++ leetcode 7. 整数反转 给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。
一.思路 转化成string, 有负号先去掉负号,然后从string的尾部开始遍历,每一个字符放到第一个另一个字符串中去. int reverse(int x) {if (x == 0)return ...
- leetcode 7整数反转和leetcode 9回文数
关键代码片 while(x>reverseN){reverseN = reverseN * 10 + x%10;x = x/10;} while (x != 0) {int pop = x % ...
- LeetCode 7 整数反转
解决方案 class Solution {public int reverse(int x) {String str = String.valueOf(x);String s = "&quo ...
- LeetCode 07. 整数反转
原题描述 个人解法思路 class Solution { public:int reverse(int x) {int temp=0;//需要返回的最后结果while(x!=0){if(temp> ...
最新文章
- python 画三维函数图-Python之Numpy:二元函数绘制/三维数据可视化/3D
- 简单的python爬虫实例
- 警惕使用System.Environment.CurrentDirectory遇到的坑
- 全志A33-ARM开发板通过NFS与Ubuntu共享文件
- BZOJ2460: [BeiJing2011]元素(线性基+贪心)
- 顶级数据团队建设全景报告_如何拥有一支顶级数据智能团队?联想总结了这些由内而外的经验...
- 2021年中国乙酸异冰片酯市场趋势报告、技术动态创新及2027年市场预测
- M1 Max 暴击,倚天补刀
- android 权限问题吗,Android 6.0前后权限问题
- 阿里云服务器mysql莫名丢失_MySQL5.6 突然死掉 阿里云端的 服务器上搭建的
- 百度之星1000——A+B问题
- Not registered via @EnableConfigurationProperties, marked as Spring component, or scanned via @Confi
- python学习(七)----time模块相关函数
- 黑杰克blackjack 游戏的简化版(第一个游戏程序)
- 我每次去德国出差必带的东西
- 【Tool】TI公司14-Pin JTAG规范以及参考原理图
- go语言csv包_golang导出csv
- 字幕:《李开复谈创新思维》上
- [附源码]Python计算机毕业设计大众点评管理系统
- python打开浏览器全屏_Python+Selenium自动化——浏览器启动自动全屏配置
热门文章
- LeetCode 845. 数组中的最长山脉(中心扩展)
- 传智书城首页设计代码_(自适应手机版)响应式创意餐饮酒店装饰设计类网站织梦模板 html5蓝色餐饮酒店设计网站源码下载...
- java socket tomcat_在Tomcat环境下使用socket通信
- 利用Python把四张图片按照顺序拼接起来
- python的魔法_python魔法方法大全
- java栅格法全局路径规划,基于A*的全局路径规划算法(1)
- 论文审稿人可以下岗了?CMU都做出论文审稿机器人了!
- 系统学习 Java IO (六)----管道流 PipedInputStream/PipedOutputStream
- Java中使用队列Queue
- WPF使用Canvas绘制可变矩形