1. 程式人生 > >陣列 加一 go語言

陣列 加一 go語言

給定一個由整陣列成的非空陣列所表示的非負整數,在該數的基礎上加一。

最高位數字存放在陣列的首位, 陣列中每個元素只儲存一個數字。

你可以假設除了整數 0 之外,這個整數不會以零開頭。

示例 1:

輸入: [1,2,3]
輸出: [1,2,4]
解釋: 輸入陣列表示數字 123。
func plusOne(digits []int) []int {
    digits[len(digits)-1] += 1
    for i := len(digits) - 1; i >= 0; i-- {
        if i != 0 && digits[i] > 9 {
	digits[i] = 0
	digits[i-1] += 1
        }
        if i == 0 && digits[i] > 9 {
	digits[i] = 0
	digits = append([]int{1}, digits...)
        }

    }
    return digits
}