加一
给定一个非负数,表示一个数字数组,在该数的基础上+1,返回一个新的数组。
该数字按照大小进行排列,最大的数在列表的最前面。
样例
给定 [1,2,3]
表示 123, 返回 [1,2,4]
.
给定 [9,9,9]
表示 999, 返回 [1,0,0,0]
.
1 public class Solution { 2 /** 3 * @param digits a number represented as an array of digits 4 * @return the result 5 */ 6 public int[] plusOne(int[] digits) { 7 // Write your code here 8 9 long sum = 0; 10 for (int i = 0; i < digits.length; i++) 11 { 12 sum = sum * 10 + digits[i]; 13 } 14 sum++; 15 List<Long> list = new ArrayList<>(); 16 int count = 0; 17 while (sum > 0) 18 { 19 list.add(sum % 10); 20 sum /= 10; 21 count++; 22 } 23 int[] temp = new int[count]; 24 25 for (int i = 0; i < temp.length; i++) 26 { 27 temp[i] = Integer.parseInt(String.valueOf(list.get(temp.length - 1 - i))); 28 } 29 return temp; 30 } 31 }