Description
Given a non-negative integer represented as a non-empty array of digits, plus one to the integer. You may assume the integer do not contain any leading zero, except the number 0 itself. The digits are stored such that the most significant digit is at the head of the list.
Solution
逐项相加,遇见不进位的就可以返回。当最高位发生进位,需要在首位插入1。
class Solution {
public:
vector<int> plusOne(vector<int>& digits) {
for (size_t i=digits.size()-1;i>=0;i--)
{
if (digits[i]==9)
{
digits[i]=0;
if(i==0)
{
digits.insert(digits.begin(),1);
return digits;
}
continue;
}
digits[i]++;
return digits;
}
}
};