题目描述:
给定一个由整数组成的非空数组所表示的非负整数,在该数的基础上加一。
最高位数字存放在数组的首位, 数组中每个元素只存储一个数字。
你可以假设除了整数 0 之外,这个整数不会以零开头。
示例 1:
输入: [1,2,3] 输出: [1,2,4] 解释: 输入数组表示数字 123。
示例 2:
输入: [4,3,2,1] 输出: [4,3,2,2] 解释: 输入数组表示数字 4321。
解题思路:
所给列表转成字符串,再转成int类型,取余运算并添加到另一个列表中,再将生成列表反转后返回。
注意列表反转函数reverse()是没有任何返回值的。
class Solution(object):
def plusOne(self, digits):
"""
:type digits: List[int]
:rtype: List[int]
"""
s = ''
li = []
for x in digits: # 列表转字符串
s += str(x)
i = int(s) + 1 # 转成整形,做加一操作
while i > 0: # 取余转回列表
li.append(i % 10)
i = int(i / 10)
li.reverse() # 列表反转
return li
关注我的公众号免费获取海量python视频学习教程!!!