题解给的思路:

bool Flag_err=;
class Solution {
public:
int reverse(int x) {
long y=;//如果这里还是int,会在判断前就被裁剪了,无法判断溢出
bool flag=;
if(x<)
flag=; while(x)
{
int ans=x%;
x=x/;
y=y*+ans;
if ((y > 0x7FFFFFFF && !flag) ||(y < (signed int)0x80000000 && flag))//检查溢出要判断向上还是向下溢出
{
y=;
Flag_err=;
break;
}
} return y;
}
};

分析:我和题解的思路不同在于判断溢出的方式,我是设置了一个较大类型(long)的数字,然后根据符号位(flag)判断是否向上(y > 0x7FFFFFFF)还是向下(y < (signed int)0x80000000)溢出,注意这里必须要有signed int,不然默认无符号。

题解给的,因为int占4字节32位,根据二进制编码的规则,INT_MAX = 2^31-1,INT_MIN= -2^31. 然后判断十位及其以上超不超标,特殊情况下再判断个位超不超标。

感觉还是他的这个方法好点,起码占用空间比我那个小。

这个简单题我还写了小半天,完蛋玩意。

leecode第七题(整数反转)的更多相关文章

  1. LeetCode 第七题--整数反转

    1. 题目 2.思路 1. 题目 给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转. 示例 1: 输入: 123输出: 321 示例 2: 输入: -123输出: -321示例 ...

  2. LeetCode刷题:第七题 整数翻转 第九题 回文数

    第七题题目描述: 给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转. 示例 1: 输入: 123 输出: 321 示例 2: 输入: -123 输出: -321 示例 3: 输入 ...

  3. LeetCode刷题--整数反转(简单)

    题目描述 给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转. 示例 1: 输入: 123 输出: 321 示例 2: 输入: -123 输出: -321 示例 3: 输入: 12 ...

  4. leecode刷题(12)-- 整数反转

    leecode刷题(12)-- 整数反转 整数反转 描述: 给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转. 示例 1: 输入: 123 输出: 321 示例 2: 输入: - ...

  5. Leecode刷题之旅-C语言/python-7.整数反转

    /* * @lc app=leetcode.cn id=7 lang=c * * [7] 整数反转 * * https://leetcode-cn.com/problems/reverse-integ ...

  6. Newtonsoft.Json C# Json序列化和反序列化工具的使用、类型方法大全 C# 算法题系列(二) 各位相加、整数反转、回文数、罗马数字转整数 C# 算法题系列(一) 两数之和、无重复字符的最长子串 DateTime Tips c#发送邮件,可发送多个附件 MVC图片上传详解

    Newtonsoft.Json C# Json序列化和反序列化工具的使用.类型方法大全   Newtonsoft.Json Newtonsoft.Json 是.Net平台操作Json的工具,他的介绍就 ...

  7. C# 算法题系列(二) 各位相加、整数反转、回文数、罗马数字转整数

    各位相加 给定一个非负整数 num,反复将各个位上的数字相加,直到结果为一位数. 示例: 输入: 输出: 解释: 各位相加的过程为: + = , + = . 由于 是一位数,所以返回 . 进阶:你可以 ...

  8. python在leecode刷题-第一题和第七题

    class Solution(object): def twoSum(self, nums, target): """ :type nums: List[int] num ...

  9. Leetcode7_整数反转

    题目 给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转. 示例 1: 输入: 123输出: 321 示例 2: 输入: -123输出: -321 示例 3: 输入: 120输出: ...

随机推荐

  1. Java 安全套接字编程以及keytool 使用最佳实践

    概述 利用 Java 的 JSSE(Java Secure Socket Extension)技术,我们可以方便的编写安全套接字程序,关于 JSSE 的介绍,可以参阅 Oracle 网站提供的 JSS ...

  2. 获取ip,获取客户端浏览器,获取客户端访问操作系统,获取客户端访问设备

    /** * 获取ip */ public static function getIp() { if (getenv('HTTP_CLIENT_IP')) { $ip = getenv('HTTP_CL ...

  3. 3 字节的 UTF-8 序列的字节 3 无效 解决

    参考下列应该可以解决,笔者为3. 1.https://blog.csdn.net/hostel_2/article/details/51517361 2.https://blog.csdn.net/u ...

  4. NLTK 知识整理

    NLTK 知识整理 nltk.corpus模块自带语料 NLTK comes with many corpora, toy grammars, trained models, etc. A compl ...

  5. css3-动画(animation)

    css3-动画(animation): 具有以下属性: 1.animation-name 自定义动画名称 2.animation-duration 动画指定需要多少秒或毫秒完成,默认值是0; 3.an ...

  6. topcoder srm 711 div1 -3

    1.给出$n,k$,求一个大于等于$n$且最小的数字$m$使得$m$的二进制表示中存在连续$k$个1 . 思路:如果$n$满足,答案就是$n$.否则,依次枚举连续1的位置判断即可. #include ...

  7. 02MySQL中的数据类型

    一.数值 INT DECIMAL 准确的小数值 FLOAT DOUBLE 二.字符串类型 CHAR(m) 此数据类型用于表示固定长度的字符串,可以包含最多达255个字符,其中m代表字符串的长度.长度固 ...

  8. Python3 tkinter基础 Label compound 图片上显示文字 fg字体颜色 font字体大小

             Python : 3.7.0          OS : Ubuntu 18.04.1 LTS         IDE : PyCharm 2018.2.4       Conda ...

  9. Python3基础 filter+lambda 筛选出1-20之间的奇数

             Python : 3.7.0          OS : Ubuntu 18.04.1 LTS         IDE : PyCharm 2018.2.4       Conda ...

  10. Super-palindrome 【可能是暴力】

    Super-palindrome 时间限制: 1 Sec  内存限制: 128 MB 提交: 486  解决: 166 [提交] [状态] [命题人:admin] 题目描述 You are given ...