美文网首页
【Leetcode】【Python】66 Plus One

【Leetcode】【Python】66 Plus One

作者: 小歪与大白兔 | 来源:发表于2017-10-21 11:57 被阅读0次

    问题描述: 对用数组表示的数字进行加一操作

    Paste_Image.png

    示例:
    输入:[9,9] 输出:[1,0,0]
    输入:[1,2,3] 输出: [1,2,4]

    思路:

    从数组的最后一位开始遍历数组,如果遇到9,则进1;如果遇到的非9,则直接进行加1操作,返回数组即可。值得注意的是,如果遍历到digits[0]时其值为9,则需要对该数组进行扩展,前面增加1

    代码示例:

    class Solution(object):
        def plusOne(self, digits):
            """
            :type digits: List[int]
            :rtype: List[int]
            """
            index = len(digits)-1
            while index >= 0:
                if index == 0:
                    if digits[index] == 9:
                        digits[index] = 0
                        return  [1]+digits
                    else:
                        digits[index] += 1
                        return digits
                if digits[index] == 9:
                    digits[index] = 0
                    index -= 1
                elif digits[index] != 9:
                    digits[index] += 1
                    return digits
    ···

    相关文章

      网友评论

          本文标题:【Leetcode】【Python】66 Plus One

          本文链接:https://www.haomeiwen.com/subject/jbkiuxtx.html