66. Plus One

# Easy

Only the last digit matter.

Judge the last digit can improve efficiency in some extend.

class Solution:
    def plusOne(self, digits: List[int]) -> List[int]:
        digits[-1] += 1
        
        if digits[-1] != 10:
            return digits
        
        # if last digit is 10
        result = [0]
        result.extend(digits)
        for i in reversed(range(1, len(result))):
            if result[i] == 10:
                result[i] = 0
                result[i-1] += 1
        if result[0] == 0:
            return result[1:]
        else:
            return result

Time complexity = O(n)O(n) , Space complexity = O(n)O(n)

Last updated