给定一个 32 位有符号整数,将整数中的数字进行反转。

示例 1:

输入: 123
输出: 321

 示例 2:

输入: -123
输出: -321

示例 3:

输入: 120
输出: 21

注意:

假设我们的环境只能存储 32 位有符号整数,其数值范围是 [−231,  231 − 1]。根据这个假设,如果反转后的整数溢出,则返回 0。

============================================================================================================

基本思路:

对传入的整数判断,大于零可以直接处理,小于零处理0-x,输入超出范围直接return 0;

用是sstream来实现整形和字符串间相互转化:   gate:https://www.cnblogs.com/mckc/p/9671017.html

将字符串翻转后再转化为整形输出

转化为整形后记得判断整形是否超过32位,按题目要求,超过就return 0;

转化可以直接用algorithm里面的reserve函数,也可以自己用for来对调;

下面是ac代码:

class Solution {
public: int reverse(int x) {
stringstream ss;
string s1,s2;
int y;
if(x>||x<-)
return ; if(x<){
ss<<x;
ss>>s1;
for(auto s=s1.end()-;s!=s1.begin()-;s--){
s2+=*s;
} ss.clear();
ss<<s2;
ss>>y;
if(y>=)
return ;
return y=-y;
} else{
ss<<x;
ss>>s1;
for(auto s=s1.end()-;s!=s1.begin()-;s--){
s2+=*s;
} ss.clear();
ss<<s2;
ss>>y;
if(y>=)
return ;
return y;
}
} };

或者用reserve:

class Solution {
public: int reverse(int x) {
stringstream ss;
string s1;
int y;
if(x>||x<-)
return ; if(x<){
ss<<x;
ss>>s1;
std::reverse(s1.begin(),s1.end());
ss.clear();
ss<<s1;
ss>>y;
if(y>=)
return ;
return y=-y;
} else{
ss<<x;
ss>>s1;
std::reverse(s1.begin(),s1.end());
ss.clear();
ss<<s1;
ss>>y;
if(y>=)
return ;
return y;
}
}
};

Leetcode 7 反转整数Reverse Integer的更多相关文章

  1. [Swift]LeetCode7. 反转整数 | Reverse Integer

    Given a 32-bit signed integer, reverse digits of an integer. Example 1: Input: 123 Output: 321 Examp ...

  2. 7. 反转整数(Reverse Integer) C++

    知识点: 内置变量 INT_MAX   INT_MIN 运算结果是否溢出的判断 判断pop>7即pop>INT_MAX%10 判断pop<-8即pop<INT_MIN%10 c ...

  3. LeetCode 7. 反转整数(Reverse Integer)

    题目描述 给定一个 32 位有符号整数,将整数中的数字进行反转. 示例 1: 输入: 123 输出: 321  示例 2: 输入: -123 输出: -321 示例 3: 输入: 120 输出: 21 ...

  4. LeetCode 【2】 Reverse Integer --007

    六月箴言 万物之中,希望最美:最美之物,永不凋零.—— 斯蒂芬·金 第二周算法记录 007 -- Reverse Integer (整数反转) 题干英文版: Given a 32-bit signed ...

  5. LeetCode 4.反转整数

    给定一个 32 位有符号整数,将整数中的数字进行反转. 示例 1: 输入: 123 输出: 321  示例 2: 输入: -123 输出: -321 示例 3: 输入: 120 输出: 21 注意: ...

  6. Leetcode 题目整理-2 Reverse Integer && String to Integer

    今天的两道题关于基本数据类型的探讨,估计也是要考虑各种情况,要细致学习 7. Reverse Integer Reverse digits of an integer. Example1: x = 1 ...

  7. leetcode第七题Reverse Integer (java)

    Reverse Integer Reverse digits of an integer. Example1: x = 123, return 321 Example2: x = -123, retu ...

  8. LeetCode之“数学”:Reverse Integer && Reverse Bits

    1. Reverse Integer 题目链接 题目要求: Reverse digits of an integer. Example1: x = 123, return 321 Example2:  ...

  9. leetCode练题——7. Reverse Integer

    1.题目:   7. Reverse Integer Given a 32-bit signed integer, reverse digits of an integer. Example 1: I ...

随机推荐

  1. js对象 数组Array详解 (参照MDN官网:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/find)

    一:数组的创建方式: 1.采用直接量创建 var arr = [];//创建一个空数组 var arr2 = [1,2,3];//创建一个有三个元素的数组 2.采用构造函数创建 a.var arr1 ...

  2. 笔记-JavaWeb学习之旅9

    XML Extensible Markup Language 可扩展标记语言 功能:配置文件,在网络中传输 基本语法 1.xml文档的后缀名.xml 2.xml第一行必须定义为文档声明 3.xml文档 ...

  3. MySQL 索引及优化实战

    https://blog.csdn.net/qq_21987433/article/details/79753551 https://tech.meituan.com/mysql_index.html ...

  4. [arc063]F.すぬけ君の塗り絵2

    因为这题考虑可以观察一个性质,答案的下界为 \(2×(max(w,h)+1)\), 因为你至少可以空出一行或一列,因此这个矩形一定会经过 \(x=\frac{w}{2}\) 或 \(y=\frac{h ...

  5. Gym - 101810F ACM International Collegiate Programming Contest (2018)

    bryce1010模板 http://codeforces.com/gym/101810 #include<bits/stdc++.h> using namespace std; #def ...

  6. python_22(Form-CRM)

    第1章 CRM 1.1 建项目 1.2 settings1.3 规范url 1.4 公共的后台模板1.5 创建部门表 1.6 建库移库 1.7 母版继承 1.7.1 导入static 1.7.2 导入 ...

  7. React 实践记录 02 Flux introduction

    Introduction 本文组成: React 官方文档翻译 相关实践心得. 内容上是Flux的介绍,例子将会在以后写出. 一旦稍微多了解一点React,很难避免听到Flux这个名词. Flux是一 ...

  8. Eclipse Mars.2集成Maven 3.5.4

    准备材料: Eclipse Mars.2 Release (4.5.2):  官网戳:https://www.eclipse.org/downloads/ Maven 3.5.4: http://ma ...

  9. JS基础1 — 代码要注意的一些问题

    1.在一对  <script></script>  标签中,有错的js代码,那么该错误代码后面的代码不会执行. 例子:<script> alert("He ...

  10. 关于 java swing 使用按钮关闭窗口

    目的是给JButton添加点击操作,使指定JFrame窗口关闭. 网上不少说法是采用frame.dispose();的方法 但是采用frame.dispose();并没有使添加在frame上的wind ...