leetcode 66

66. Plus One

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.

一个非负整数n按照从高到低的顺序将每一位放在数组中,然后n加1,返回加1后的数组。

注意进位的问题。

代码如下:

 

 1 class Solution {
 2 public:
 3     vector<int> plusOne(vector<int>& digits) {
 4         int size = digits.size();
 5         int flag = 1;
 6         for(int i = size-1; i >= 0; i --)
 7         {
 8             digits[i] = digits[i] + flag;
 9             flag = 0;
10             if(digits[i] > 9)
11             {
12                 digits[i] = 0;
13                 flag = 1;
14             }
15         }
16         if(flag == 1)
17         {
18             digits.insert(digits.begin(),flag);
19         }
20         return digits;
21     }
22 };

 

posted @ 2016-09-09 11:48  花椰菜菜菜菜  阅读(120)  评论(0编辑  收藏  举报