來(lái)源:力扣(LeetCode)
鏈接:https://leetcode-cn.com/problems/plus-one
著作權(quán)歸領(lǐng)扣網(wǎng)絡(luò)所有。商業(yè)轉(zhuǎn)載請(qǐng)聯(lián)系官方授權(quán),非商業(yè)轉(zhuǎn)載請(qǐng)注明出處。
給定一個(gè)由 整數(shù) 組成的 非空 數(shù)組所表示的非負(fù)整數(shù),在該數(shù)的基礎(chǔ)上加一。
最高位數(shù)字存放在數(shù)組的首位, 數(shù)組中每個(gè)元素只存儲(chǔ)單個(gè)數(shù)字。
你可以假設(shè)除了整數(shù) 0 之外,這個(gè)整數(shù)不會(huì)以零開(kāi)頭。
示例 1:輸入:digits = [1,2,3]
輸出:[1,2,4]
解釋?zhuān)狠斎霐?shù)組表示數(shù)字 123。
示例 2:
輸入:digits = [4,3,2,1]
輸出:[4,3,2,2]
解釋?zhuān)狠斎霐?shù)組表示數(shù)字 4321。
示例 3:
輸入:digits = [0]
輸出:[1]
提示:
1 <= digits.length <= 100
0 <= digits[i] <= 9
class Solution {
public int[] plusOne(int[] digits) {
// 開(kāi)始循環(huán)
for (int i = digits.length - 1; i >= 0; i--) {
// 開(kāi)始加一
int a = digits[i] + 1;
// 開(kāi)始判斷
if (a >= 10) {
// 如果為最后一位了 則直接生成新數(shù)組返回
if (i == 0) {
int[] array = new int[digits.length + 1];
array[0] = 1;
return array;
}
// 否則 繼續(xù)將9改為0
digits[i] = 0;
} else {
// 如果不為9 則直接返回即可
digits[i] = a;
return digits;
}
}
return digits;
}
}