leetcode 7:Reverse Integer(知识点:vector ,复习STL stack,queue)

原创 2016年08月29日 16:35:05

题目:

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

解答:

这道题很简单,但是很坑,测试数据产生的结果如果溢出的话,应该返回0,但是并没有在题目中写到。
测试int类型是否溢出的方法:用long long类型完全一样地做一遍,最后比较两者结果是否相同。

#include <vector>
#include <cmath>
class Solution {
public:
    int reverse(int x) {
        vector<int> a;
        int sign = x >= 0 ? 1 : -1;
        int absOfX = abs(x);
        while(absOfX){
            int num = absOfX % 10;
            absOfX /= 10;
            a.push_back(num);
        }
        int result1 = 0;
        long long result2 = 0;
        int index = 1;
        while(!a.empty()){
            int add = a.back() * index;
            long long addL = (long long)a.back() * index;
            if(add != addL){
                return 0;
            }
            result1 += add;
            result2 += addL;
            index *= 10;
            a.pop_back();
        }
        result1 *= sign;
        result2 *= sign;
        if(result1 != result2)
            return 0;
        else
            return result1 ;
    }
};

知识点:

STL vector :http://blog.csdn.net/phoebin/article/details/3864590
STL stack,queue:
http://www.cnblogs.com/mfryf/archive/2012/08/09/2629992.html

版权声明:本文为博主原创文章,未经博主允许不得转载。

C++ stack queue vector 中 易混淆的常用方法 浅析

C++ 中stack,queue,vector是常见的数据结构,它们分别封装在,,头文件中。本文将分述三个模板容器的常见方法,以及相互之间易混淆的部分。...
  • u013630349
  • u013630349
  • 2015年07月13日 11:14
  • 1213

C++ STL库的总结以及实现原理

STL的容器可以分为以下几个大类: 一:序列容器, 有vector, list, deque, string. 二 : 关联容器,     有set, multiset, map, mul...
  • uestcyao
  • uestcyao
  • 2014年03月23日 14:46
  • 5190

STL中queue,list,vector频繁访问效率

针对STL中的queue,list,vector频繁访问,即插入(尾部)与取出(头部)操作时的效率进行了对比,从时间消耗上来看,queue最少,list与vector消耗相对较大,二者之间差别不大。附...
  • dydm_13128
  • dydm_13128
  • 2014年03月16日 14:50
  • 1958

leetcode 4 (知识点:stl:vector ,iterator )

题目:There are two sorted arrays nums1 and nums2 of size m and n respectively. Find the median of the ...
  • Alex_Liuyuren
  • Alex_Liuyuren
  • 2016年08月22日 23:21
  • 99

LeetCode7 Reverse Integer

  • 2018年01月09日 20:10
  • 9KB
  • 下载

C++stl 向量,链表,栈,队列(vector, list, stack, queue)

vector list stack queue
  • sinat_39037640
  • sinat_39037640
  • 2017年06月30日 08:17
  • 239

c++STL容器(map,set,vector,stack,queue)

1.Map Map是STL的一个关联容器,它提供一对一(其中第一个可以称为关键字,每个关键字只能在map中出现一次,第二个可能称为该关键字的值)的数据处理能力,由于这个特性,它完成有可能在我们处理一对...
  • sinat_35121480
  • sinat_35121480
  • 2016年12月21日 00:58
  • 1308

关于STL的一些总结1:vector,queue,stack

我就是一个小蒟蒻而已 STL我学的只是九牛一毛(希望各位大佬教教我) 自己也学习了一下STL,我大致总结一下我自己平时是如何使用STL的vectorvector是不定长数组(数学里面vector叫...
  • qq_30974369
  • qq_30974369
  • 2017年07月01日 10:53
  • 233

C++ STL 栈stack 向量vector 队列queue的用法

栈的用法: 1.声明一个stack    stack s1;    stack s2; 2.stack中的操作     stack s;     s.p...
  • laobai1015
  • laobai1015
  • 2017年04月17日 10:27
  • 1175

stl 常用函数(包括vector list stack queue)

vector: Constructors 构造函数 Operators 对vector进行赋值或比较 assign() 对Vector中的元素赋值 at() 返回指定位置的元素 ba...
  • qiankun1993
  • qiankun1993
  • 2011年10月28日 19:46
  • 2188
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:leetcode 7:Reverse Integer(知识点:vector ,复习STL stack,queue)
举报原因:
原因补充:

(最多只允许输入30个字)