LintCode Q407 Plus One in Python

  • Jinhai ZHOU
  • 2 Minutes
  • 2016年11月1日
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
class Solution:
# @param {int[]} digits a number represented as an array of digits
# @return {int[]} the result
def plusOne(self, digits):
# Write your code her
carrier = 1
for i in xrange(len(digits)-1, -1, -1):
sum_digit = carrier + digits[i]
digits[i] = sum_digit % 10
carrier = sum_digit/10
if carrier == 0:
return digits
digits[0] = carrier
digits.append(0)
return digits
# The worst case time complexity O(n)
# but the amortized time complexity O(1)
知识共享许可协议
本作品采用知识共享署名-相同方式共享 4.0 国际许可协议进行许可。