66. Plus One

2019-02-20  本文已影响0人  苏州城外无故人
【题目】 image.png

思路:计算数组里面的数+1;[1, 2, 3] + 1 = [1, 2, 4]; [1, 9] + 1 = [2, 0]。依次循环遍历,如果小于9,不需要进位,直接加1返回。不然就设置该位为0,然后进位。

遍历结束还没有返回,则是所有的数字为9,比如【9, 9】 + 1 = 【0, 0】,此时需要新建数组为【1, 0,0】


public int[] plusOne(int[] digits) {
        int length = digits.length;
        for (int i = length - 1; i >= 0; i--) {
            if (digits[i] < 9) {
                digits[i]++;
                return digits;
            }
            digits[i] = 0;
        }
        int[] newDigits = new int[length + 1];
        newDigits[0] = 1;
        return newDigits;
上一篇 下一篇

猜你喜欢

热点阅读