LeetCode刷题(python)——066.加一

题目描述:

给定一个由整数组成的非空数组所表示的非负整数,在该数的基础上加一。

最高位数字存放在数组的首位, 数组中每个元素只存储一个数字。

你可以假设除了整数 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视频学习教程!!!

LeetCode刷题(python)——066.加一_第1张图片

你可能感兴趣的:(python,LeetCode)