LeetCode 66 Plus One

Question

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

Submission

Java Submission
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
public class Solution {
public int[] plusOne(int[] digits) {
boolean allNine = true;

for (int i = 0; i < digits.length; i++) {
if (digits[i] != 9) {
allNine = false;
}
}

if (allNine) {
int[] newNumber = new int[digits.length+1];
newNumber[0] = 1;
return newNumber;
} else {
for (int i = digits.length - 1; i >= 0; i--) {
if (digits[i] == 9) {
digits[i] = 0;
} else {
digits[i]++;
break;
}
}
return digits;
}
}
}