66. 加一

 

时间O(n),空间O(1)

 1     public int[] plusOne(int[] digits) {
 2         int len=digits.length,tag=1;
 3         for(int i=len-1;i>=0;i--){
 4             tag=digits[i]+tag;
 5             digits[i]=tag%10;
 6             tag=tag/10;    
 7             if(tag==0) return digits;
 8         }
 9         // 能执行到这一步说明tag一直是1,那就是999这种特殊情况
10         digits=new int[len+1];
11         digits[0]=1;
12         return digits;
13     }

 

posted @ 2021-04-27 09:20  jchen104  阅读(11)  评论(0编辑  收藏  举报