码迷,mamicode.com
首页 > 其他好文 > 详细

66-Lettcode-加一

时间:2020-01-03 23:08:15      阅读:77      评论:0      收藏:0      [点我收藏+]

标签:span   max   alt   png   bre   public   one   ++   --   

技术图片

题解: 最高位加1 遇9进1,只能为单数不能为

  arr[9,9]  ->[9,10]  错误

   arr [9,9] ->[1,0,0] 正确


解:
class
Solution { public int[] plusOne(int[] digits) { if(digits[digits.length - 1] != 9) { digits[digits.length-1] = digits[digits.length-1] + 1; return digits; } //全部为9整体向前进1 int arr [] = new int[digits.length + 1]; boolean isNew = true ; for(int i = 0 ; i < digits.length; i++) { if(digits[i] != 9) { isNew = false ; } } if(isNew) { for(int i = 0 ; i < digits.length; i++) { arr[i] = 0 ; } arr[0] = 1 ; return arr ; } else { // 补1 int max = digits.length - 1 ; int result = digits[max] + 1; while(true) { if(result == 10) { digits[max] = 0; digits[max - 1 ] = digits[max - 1] + 1; if(digits[max - 1] < 10) { break; } result = digits[max - 1]; } max -- ; } return digits; } } }

66-Lettcode-加一

标签:span   max   alt   png   bre   public   one   ++   --   

原文地址:https://www.cnblogs.com/1-Admin/p/12147033.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!