题意:
对一个数,这个数表示成一个数组,对这个数加上1,返回新数表示的新数组。
初步分析:本来是个位加1就可以了,但是这个问题的关键在于,可能会有进位(当最后一位或最后几位为9的时候) 9 ->10。所以循环遍历并分类讨论。
public class Solution {
public int[] plusOne(int[] digits) {
for(int i=digits.length-1; i>=0; i--)
{
if(digits[i] < 9)
{
digits[i]++;
return digits;
}
else if(digits[i] == 9)
{
digits[i] = 0;
}
}
int[] one = new int[digits.length+1];
one[0]++;
return one;
}
}