给定一个 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. StringUtils中常用方法leftPad(),rightPad(),center()

    org.apache.commons.lang3的StringUtils 方法如下: public static String leftPadTime(Integer time){    return ...

  2. Elasticsearch and MongoDb

    http://www.linkedin.com/groups/Difference-between-elasticsearch-MongoDB-3393294.S.588764405916973056 ...

  3. Action类为何要 extends ActionSupport以及实现ModelDriven

    http://blog.sina.com.cn/s/blog_164e377490102wqhk.html

  4. rsync服务的安装与配置

    rsync 服务的安装配置与客户端的同步操作   1. 使用xinetd服务运行rsync服务: 服务器端: 1.关闭selinux,设置iptables开放xinetd的873端口 2. yum - ...

  5. Memcached 未授权访问漏洞及加固

    memcached是一套分布式的高速缓存系统.它以Key-Value(键值对)形式将数据存储在内存中,这些数据通常是应用读取频繁的.正因为内存中数据的读取远远大于硬盘,因此可以用来加速应用的访问. 漏 ...

  6. pc端_移动端_H5_ QQ在线客服链接代码

    PC端:QQ在线客服链接代码 <a href="tencent://message/?uin=1239300678&Site=sc.chinaz.com&Menu=ye ...

  7. javascript 流程控制及函数

    回顾 基本语法 在html的使用 <script></script> 注释 ///* */ 指令结束符 ;换行 输出 console.log()document.write() ...

  8. poj 2406 Power Strings 周期问题

    Power Strings Time Limit: 3000MS   Memory Limit: 65536K Total Submissions: 48139   Accepted: 20040 D ...

  9. MyBatis的数据库操作

    MyBatis的数据库操作 大学毕业有一段时间了,作为一名没有任何开发工作经验的大专毕业生想找到一份软件开发的工作确实很难,但我运气还算不错,应聘上一份java web开发的工作.作为一名新人,老板给 ...

  10. Spring MVC系列[2]——参数传递及重定向

    1.目录结构 2.代码 <?xml version="1.0" encoding="UTF-8"?> <web-app version=&qu ...