[Leetcode]66. Plus One


 

Given a non-negative integer represented as a non-empty array of digits, plus one to the integer.

You may assume the integer do not contain any leading zero, except the number 0 itself.

The digits are stored such that the most significant digit is at the head of the list.

 

题目意思:将一个整数按位存在数组里。然后给这个整数值+1 ,让你返回+1后的结果。结果放在数组里返回。

 

思路:主要就是判断,如果某个位+1后值等于10,则那个位值变为0,下一位进1。

 

 1 class Solution {
 2     public int[] plusOne(int[] digits) {
 3         int[] a;
 4         for (int i=digits.length-1;i>=0;i--){
 5             digits[i]+=1;
 6             if (digits[i]==10)
 7                 digits[i] = 0;
 8             else break;
 9             if (i==0&&digits[i]==0){
10                 a = new int[digits.length+1];
11                 a[0] = 1;
12                 return a;
13             }
14         }
15     return digits
16     }
17 }

 

 

posted @ 2017-10-27 09:56  SkyMelody  阅读(83)  评论(0编辑  收藏  举报