【Leetcode】【Python】66 Plus One

2017-10-21  本文已影响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
···
上一篇 下一篇

猜你喜欢

热点阅读