LeetCode | Plus One
2014-03-07 23:09
183 查看
题目
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.
分析
这题也没啥特别技巧吧,别用除法、取余的操作就好
代码
import java.util.ArrayList;
public class PlusOne {
public int[] plusOne(int[] digits) {
if (digits == null || digits.length == 0) {
return digits;
}
ArrayList<Integer> list = new ArrayList<Integer>();
int carry = 1;
for (int i = digits.length - 1; i >= 0; --i) {
if (carry == 1 && digits[i] == 9) {
list.add(0);
} else {
list.add(digits[i] + carry);
carry = 0;
}
}
if (carry == 1) {
list.add(1);
}
int N = list.size();
int[] results = new int
;
for (int i = 0; i < N; ++i) {
results[i] = list.get(N - 1 - i);
}
return results;
}
}
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.
分析
这题也没啥特别技巧吧,别用除法、取余的操作就好
代码
import java.util.ArrayList;
public class PlusOne {
public int[] plusOne(int[] digits) {
if (digits == null || digits.length == 0) {
return digits;
}
ArrayList<Integer> list = new ArrayList<Integer>();
int carry = 1;
for (int i = digits.length - 1; i >= 0; --i) {
if (carry == 1 && digits[i] == 9) {
list.add(0);
} else {
list.add(digits[i] + carry);
carry = 0;
}
}
if (carry == 1) {
list.add(1);
}
int N = list.size();
int[] results = new int
;
for (int i = 0; i < N; ++i) {
results[i] = list.get(N - 1 - i);
}
return results;
}
}
相关文章推荐
- 和大神们学习每天一题(leetcode)-Plus One
- leetcode: Plus One
- LeetCode题解---Plus One
- [LeetCode-66] Plus One
- LeetCode -- 66. Plus One
- leetcode---Plus One
- [leetcode] 【数组】 66. Plus One
- 2018.3.12 leetcode打卡 #66 plus one
- leetcode - plus one
- LeetCode --- Plus One
- leetcode做题总结,题目Plus One 2012/04/02
- [LeetCode]Plus One 优化
- Leetcode-66. Plus One
- LeetCode | Plus One
- leetcode66.[Array] Plus One
- LeetCode--66. Plus One
- LeetCode-Plus One
- LeetCode(66)题解: Plus One
- leetcode 66:Plus One
- 【LeetCode】Plus One