第一次忘记考虑,只有[9]->[1,0]的情况。
var plusOne = function(digits) {
var len = digits.length-1;
for(let i =len;i>=0;i--){
digits[i]++;
if(digits[i]==10){
digits[i]=0;
if(i==0){
digits.unshift(1);
}
}
else{
return digits;
}
}
return digits;
};
看到一个更简洁的判断,时间减少8ms。
var plusOne = function(digits) {
var len = digits.length-1;
var carry=true ;
for(let i =len;i>=0;i--){
digits[i]++;
carry = digits[i]>9;
digits[i]%=10;
if(!carry){return digits;}
}
if