LeetCode

题目:

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.

思路:

进位

package manipulation;

public class PlusOne {

    public int[] plusOne(int[] digits) {
        int n = digits.length;
        int i = n - 1;
        for (; i >= 0; --i) {
            if (digits[i] != 9) {
                ++digits[i];
                return digits;
            } else {
                digits[i] = 0;
            }
        }
        
        digits = new int[n + 1];
        digits[0] = 1;
        return digits;
    }
    
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        int[] digits = { 8,9,9 };
        PlusOne p = new PlusOne();
        for (int i : p.plusOne(digits))
            System.out.println(i);
    }

}
原文地址:https://www.cnblogs.com/null00/p/5087618.html