题目链接
注意点
- 考虑开头数字有进位的情况
解法
解法一:如果当前数字是9就变为0,否则就+1,并return。时间复杂度O(n)
class Solution {
public:
vector<int> plusOne(vector<int>& digits) {
int i = digits.size()-1;
while(i >= 0)
{
if(digits[i] == 9) digits[i] = 0;
else
{
digits[i] += 1;
return digits;
}
i--;
}
if (digits[0] == 0) digits.insert(digits.begin(), 1);
return digits;
}
};
小结
- 链表是很常见的一种数据结构,要花点时间专门研究一下。