这题简单归简单,就是考察一个进位。第一种是合在一起直接算,再转换出去的。比较差的方法。
class Solution(object):
def plusOne(self, digits):
"""
:type digits: List[int]
:rtype: List[int]
"""
b = []
for i in digits:
b.append(str(i))
c = int(''.join(b))
c = str(c + 1)
d = []
for i in c:
d.append(int(i))
return d
还有一个就是直接对list进行操作,从末尾开始加
<pre name="code" class="python">class Solution(object):
def plusOne(self, digits):
"""
:type digits: List[int]
:rtype: List[int]
"""
c = 0
for i in range(len(digits))[::-1]:
if i == len(digits) - 1:
digits[i] += 1 + c
else:
digits[i] += c
if digits[i] >= 10:
digits[i] = digits[i] % 10
c = 1
if i == 0:
digits.insert(0, 1)
else:
c = 0
return digits