给定一个由整数组成的非空数组所表示的非负整数,在该数的基础上加一。
最高位数字存放在数组的首位, 数组中每个元素只存储一个数字。
class Solution {
public int[] plusOne(int[] digits) {
int m=digits.length;
int k=1;
int tmp=0;
for(int i=m-1;i>=0;i--){
tmp=digits[i]+k;
digits[i]=tmp%10;
k=tmp/10;
}
if(k==0){
return digits;
}
else{
int newDigits[]=new int[m+1];
for(int i=0;i<m;i++){
newDigits[i+1]=digits[i];
}
newDigits[0]=1;
return newDigits;
}
}
}