407. 加一
给定一个非负数,表示一个数字数组,在该数的基础上+1,返回一个新的数组。
该数字按照大小进行排列,最大的数在列表的最前面。
您在真实的面试中是否遇到过这个题?
Yes
样例
给定
[1,2,3]
表示 123, 返回
[1,2,4]
.
给定
[9,9,9]
表示 999, 返回
[1,0,0,0]
.
相关题目
思路:没什么思路
AC代码:
class Solution {
public:
/*
* @param digits: a number represented as an array of digits
* @return: the result
*/
vector<int> plusOne(vector<int> &digits) {
// write your code here
int len=digits.size();
for(int i=len-1;i>=0;i--){
if(digits[i]==9){
digits[i]=0;//是9就一直赋为0
}else{
digits[i]+=1;
return digits;//不是9,就加一就直接返回
}
}
if(digits.front()==0){
digits.insert(digits.begin(),1);
}
return digits;
}
};