1. 程式人生 > >leetcode- 加一

leetcode- 加一

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

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

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

示例 1:

輸入: [1,2,3]
輸出: [1,2,4]
解釋: 輸入陣列表示數字 123。

示例 2:

輸入: [4,3,2,1]
輸出: [4,3,2,2]
解釋: 輸入陣列表示數字 4321。

程式碼

/**
 * @param {number[]} digits
 * @return {number[]}
 */
var plusOne = function(digits)
{ let lastIndex = digits.length-1; do{ let lastNum = digits[lastIndex]; if(lastNum == 9){ digits[lastIndex] = 0; if(lastIndex == 0){ digits.unshift(1) lastIndex = -1; }else{ lastIndex --; }
}else{ digits[lastIndex]++; lastIndex = -1; console.log(lastIndex) } }while(lastIndex >=0) return digits };