給定一個由整數(shù)組成的非空數(shù)組所表示的非負整數(shù),在該數(shù)的基礎(chǔ)上加一倘核。
最高位數(shù)字存放在數(shù)組的首位, 數(shù)組中每個元素只存儲一個數(shù)字即彪。
你可以假設(shè)除了整數(shù) 0 之外紧唱,這個整數(shù)不會以零開頭。
示例 1:
輸入: [1,2,3]
輸出: [1,2,4]
解釋: 輸入數(shù)組表示數(shù)字 123隶校。
示例 2:
輸入: [4,3,2,1]
輸出: [4,3,2,2]
解釋: 輸入數(shù)組表示數(shù)字 4321漏益。
class Solution(object):
def plusOne(self, digits):
"""
:type digits: List[int]
:rtype: List[int]
"""
jin = 0
digits[-1] += 1
for i in range(1, len(digits) + 1):
yu = (digits[-i] + jin) % 10
jin = (digits[-i] + jin) / 10
digits[-i] = yu
if jin != 0:
digits.insert(0, jin)
return digits
思路:從后往前判斷是否有進位,如果有則加上深胳,循環(huán)結(jié)束后還需要判斷進位符是否為0绰疤,如果不為0,則需要在最高位加一舞终。