PlusOne

1. 问题 【PlusOne】给定一个整数(已拆分为各个元素存于数组),然后对该数值加1
2. solution

class Solution{ vector PlusOne(vector &digit){ vector sum(digit.size(),0); int one =1; int tmp = 0; for(int i=digit.size()-1; i>=0; i--){ tmp = digit[i] + one; one+ = tmp/10; sum[i]=tmp%10; } if(one>0){ sum.insert(sum.begin(),one); } }

3.知识点 vector用法:
#include < vector> using namespace std;

vector迭代器和函数
push_back() 在数组的最后添加一个数据
pop_back() 去掉数组的最后一个数据
at(int pos) 返回pos位置元素的引用
begin() 得到数组头的指针
end() 得到数组的最后一个单元+1的指针
front() 得到数组头的引用
back() 得到数组的最后一个单元的引用
max_size() 得到vector最大可以是多大
capacity() 当前vector分配的大小
size () 当前使用数据的大小
resize 改变当前使用数据的大小,如果它比当前使用的大,者填充默认值
reserve 改变当前vecotr所分配空间的大小
erase(iterator it) 删除指针指向的数据项
clear() 清空当前的vector
rbegin() 将vector反转后的开始指针返回(其实就是原来的end-1)
rend() 将vector反转构的结束指针返回(其实就是原来的begin-1)
empty 判断vector是否为空函数
swap 与另一个vector交换数据

    推荐阅读