66.加一
题目描述
加一
思路:统计
从末尾往前统计9,如果是9,则不断往前移动,直到最开始或某个不为9的位。找到最后一个加1不影响其他位的位置就停止。
![找9](https://i-blog.csdnimg.cn/blog_migrate/bfa44290d8c69a23d4696824f6f6cea4.png)
class Solution:
def plusOne(self, digits: List[int]) -> List[int]:
idx = len(digits) - 1
while idx >= 0 and digits[idx] == 9:
digits[idx] = 0
idx -= 1
if idx >= 0:
digits[idx] += 1
else:
digits = [1] + digits
return digits