跳到主要内容

66 加一

https://leetcode.cn/leetbook/read/top-interview-questions-easy/x2cv1c/

https://leetcode.cn/problems/plus-one/description/

cost: 5m49s

class Solution {
public:
vector<int> plusOne(vector<int>& digits) {
vector<int> r = {};
int delta = 1;
for (int i = digits.size() - 1; i >= 0; i--) {
int v = digits[i] + delta;
delta = v / 10;
r.push_back(v % 10);
}
if (delta > 0) {
r.push_back(delta);
}
for (int i = 0, j = r.size() - 1; i < j; i++, j--) {
int tmp = r[i];
r[i] = r[j];
r[j] = tmp;
}
return r;
}
};
  • 时间复杂度:O(n)
  • 空间复杂度:O(1)