leetcode 66 纪念我第一个独立写完并通过的程序!
class Solution:
def plusOne(self, digits: List[int]) -> List[int]:
if digits[-1]!=9:
digits[-1]+=1
return digits
else:
i=0
while i<len(digits):
while digits[-1-i]!=9:
if i+1==len(digits):
return [int(char) for char in str(str(digits[0]+1)+i*"0" )]
else:
return digits[0:len(digits)-i-1]+[int(char) for char in str(str(int(digits[-1-i])+1)+i*"0" )]
i+=1
return [int(char) for char in str("1"+i*"0" )]
但是还不够精简 时间复杂度略高!
参考以下几种优秀代码:
太妙了!!