Maple's Blog.

Leetcode-66

字数统计: 170阅读时长: 1 min
2019/04/07 Share

plusone-链接

实现的代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
class Solution {
public:
vector<int> plusOne(vector<int>& digits) {
int k=digits.size()-1;
digits[k]+=1;
int m=0;
while(digits[k]>9) //每次加一后看它会不会进位,如果进位就继续循环
{
digits[k]=0;
k--;
if(k==-1) //当递减到最后一位的时候跳出循环,给予一个标记
{
m=1;
break;
}
digits[k]++;
}
if(m==1) //考虑类似[9,9,9,9,9,9]的这种情况,要多加一位数
{
digits[0]=1;
for(int i=1;i<digits.size();i++)
{
digits[i]=0;
}
digits.push_back(0);
}
return digits;
}
};

这是一道简单题,所以并没有什么很复杂的算法…….

CATALOG