加一
访问
本文共297字。
方法1、考虑特殊情况,末尾是9
思路:
1、末尾无9,直接+1;
2、末尾多个9,找最前面不是9的数+1,之后的数置零;
3、数组全是9,返回一个新数组,首位=1,其余=0
时间复杂度:O(n)O(n),其中 nn 是数组 \textit{digits}digits 的长度。
空间复杂度:O(1)O(1)。返回值不计入空间复杂度。
执行用时:32 ms
注意:逆序遍历,反序遍历
1 | class Solution: |
方法2、余数(判断+1是否为0)
思路:判断最后一个数+1求余数是否为0
1、逆序遍历求余数,赋值给当前位置;如不全为0,直接返回结果;
2、如全为0,则返回多一位的新数组,首位=1,其余为0.
执行用时:36 ms
1 | class Solution: |