码迷,mamicode.com
首页 > 其他好文 > 详细

[LeetCode] NO. 66 Plus One

时间:2016-09-29 17:39:01      阅读:134      评论:0      收藏:0      [点我收藏+]

标签:

[题目] 

Given a non-negative number represented as an array of digits, plus one to the number.

The digits are stored such that the most significant digit is at the head of the list.

 

[题目解析] 用一个数组表示一个非负数,然后进行加1的操作,数组第一位是最高位。题目比较简单,我们考虑只有某一位为9并且有进位的情况下,该位会变成0,然后进位,否则就直接该位进行+1操作即可。

当所有位都是9的特殊情况下,要特别处理一下,具体代码如下。

    

  public int[] plusOne(int[] digits) {
        int flag = 1;
        int len = digits.length;
        int []ret = new int[len+1];
        for(int i = len-1; i >= 0; i--){
            if(digits[i] == 9){
                digits[i] = 0;
            }else{
                digits[i]++;
                return digits;
            }
        }
        ret[0] = 1;
        return ret;
  }

  

[LeetCode] NO. 66 Plus One

标签:

原文地址:http://www.cnblogs.com/zzchit/p/5920506.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!