初級算法-7. 加一
阿新 • • 發佈:2019-04-25
題目 一個數 ont 不為 turn strong 開始 dig span
題目描述:
給定一個由整數組成的非空數組所表示的非負整數,在該數的基礎上加一。
最高位數字存放在數組的首位, 數組中每個元素只存儲一個數字。
你可以假設除了整數 0 之外,這個整數不會以零開頭
示例 1: 輸入: [1,2,3] 輸出: [1,2,4] 解釋: 輸入數組表示數字 123。
示例 2:
輸入: [9,9,9,9] 輸出: [1,0,0,0,0] 解釋: 輸入數組表示數字 9999。
分析: 1.從最低位(數組的最後一個元素)開始,如果此位不為9就使之+1,並返回原數組
2.若此位為9,本位置0,向前遍歷執行第一步
最後若最高位為0,即表示數組全為9,則返回[1,0,0,...,0]
class Solution { public int[] plusOne(int[] digits) { for(int i=digits.length-1;i>=0;i--){ if(digits[i]==9) digits[i]=0; else{ digits[i]++; return digits; } }if(digits[0]==0) { int[] t=new int[digits.length+1]; t[0]=1; return t; } return digits; } }
初級算法-7. 加一