Given a non-negative integer represented as a non-empty array of digits, plus one to the integer.
You may assume the integer do not contain any leading zero, except the number 0 itself.
The digits are stored such that the most significant digit is at the head of the list.
public static int[] plusOne(int[] digits) {
if(digits==null || digits.length<1){
return digits;
}
int plus = 1;
for (int i = digits.length-1; i >=0; i--) {
int current = (digits[i] + plus) % 10;//當前位置
plus = (digits[i] + plus) /10;//下一位
digits[i] = current;
if(plus == 0){//沒有下一位
return digits;
}
}
//越位
int[] bigOne = new int[digits.length+1];
bigOne[0] = 1;
return bigOne;
}