leetcode66:加一
阿新 • • 發佈:2020-08-12
給定一個由整陣列成的非空陣列所表示的非負整數,在該數的基礎上加一。
最高位數字存放在陣列的首位, 陣列中每個元素只儲存單個數字。
你可以假設除了整數 0 之外,這個整數不會以零開頭。
=========Python=========
class Solution: def plusOne(self, digits: List[int]) -> List[int]: i = len(digits) - 1 carry = 1 while i >= 0: if digits[i] + carry > 9: digits[i], carry= (digits[i] + carry) % 10, (digits[i] + carry) // 10 else: digits[i] += carry carry = 0 break i -= 1 if carry > 0: return [carry] + digits else: return digits
==========Go==========
func plusOne(digits []int) []int { var result []int carry := 0 for i := len(digits) - 1; i >= 0; i--{ digits[i] += carry carry = 0 if i == len(digits) - 1{ digits[i] ++ } if digits[i] == 10{ carry = 1 digits[i]= digits[i] % 10 } } if carry == 1{ result = make([]int, 1) result[0] = 1 result = append(result, digits...) } else { result = digits } return result }