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.
題目大意:将一個數字的各位都放在一個數組中,給這個數字加1,求得到的新數組。
高位在前。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<code>class</code> <code>Solution {</code>
<code>public</code><code>:</code>
<code> </code><code>vector<</code><code>int</code><code>> plusOne(vector<</code><code>int</code><code>>& digits) {</code>
<code> </code><code>int</code> <code>len = digits.size();</code>
<code> </code><code>for</code><code>(</code><code>int</code> <code>i = len - 1; i >= 0;i--)</code>
<code> </code><code>{</code>
<code> </code><code>if</code><code>(digits[i] + 1 < 10)</code>
<code> </code><code>{</code>
<code> </code><code>digits[i] = digits[i] + 1;</code>
<code> </code><code>break</code><code>;</code>
<code> </code><code>}</code>
<code> </code><code>else</code>
<code> </code><code>digits[i] = 0;</code>
<code> </code><code>if</code><code>(i == 0)</code>
<code> </code><code>{</code>
<code> </code><code>digits.clear();</code>
<code> </code><code>digits.push_back(1);</code>
<code> </code><code>for</code><code>(</code><code>int</code> <code>j = 0 ;j < len; j++)</code>
<code> </code><code>digits.push_back(0);</code>
<code> </code><code>}</code>
<code> </code><code>}</code>
<code> </code><code>return</code> <code>digits;</code>
<code> </code><code>}</code>
<code>};</code>
<code></code>
本文轉自313119992 51CTO部落格,原文連結:http://blog.51cto.com/qiaopeng688/1835912