题目描述:
给定一个由整数组成的非空数组所表示的非负整数,在该数的基础上加一。
最高位数字存放在数组的首位, 数组中每个元素只存储一个数字。
你可以假设除了整数 0 之外,这个整数不会以零开头。
示例 1:
输入: [1,2,3] 输出: [1,2,4] 解释: 输入数组表示数字 123。
示例 2:
输入: [4,3,2,1] 输出: [4,3,2,2] 解释: 输入数组表示数字 4321。
先说一下个人解题思路,这个题比较简单,我是先把列表转化为数字,然后再将数字转化为字符,通过遍历字符将字符转化为列表
代码奉上:
class Solution:
def plusOne(self, digits):
"""
:type digits: List[int]
:rtype: List[int]
"""
"""列表转化为数字"""
nums = 0
for i in digits:
nums = nums * 10 + i
nums = nums + 1
"""数字转化为字符"""
str_nums = str(nums)
"""字符转化为列表"""
res = []
for i in str_nums:
res.append(int(i))
return res
if __name__ == '__main__':
S = Solution()
res = S.plusOne([4,3,2,1])#测试列表
res1 =S.plusOne([7,8,5,9,9])#测试列表
print(res)
print(res1)
输出结果:
[4, 3, 2, 2]
[7, 8, 6, 0, 0]
Process finished with exit code 0
代码小白,敬请指正