6. ZigZag Conversion
題目:https://leetcode.com/problems/zigzag-conversion/
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
<code>string convert2(string s, </code><code>int</code> <code>numRows) {</code>
<code> </code><code>if</code> <code>(s.length() < 2 || numRows < 2)</code>
<code> </code><code>return</code> <code>s;</code>
<code> </code><code>int</code> <code>cycle = 2 * numRows - 2;</code>
<code> </code><code>string tmp;</code>
<code> </code><code>string result;</code>
<code> </code><code>for</code> <code>(</code><code>int</code> <code>i = 0; i < numRows; i++)</code>
<code> </code><code>{</code>
<code> </code><code>if</code> <code>(i == 0 || i == numRows - 1)</code>
<code> </code><code>{</code>
<code> </code><code>for</code> <code>(</code><code>int</code> <code>j = 0; j < s.length(); j += cycle)</code>
<code> </code><code>{</code>
<code> </code><code>if</code> <code>(i + j < s.length())</code>
<code> </code><code>tmp += s.at(i+j);</code>
<code> </code><code>}</code>
<code> </code><code>result += tmp;</code>
<code> </code><code>cout << tmp << endl;</code>
<code> </code><code>tmp.clear();</code>
<code> </code><code>}</code>
<code> </code><code>else</code>
<code> </code><code>int</code> <code>minus = numRows - i - 1;</code>
<code> </code><code>int</code> <code>j, j1;</code>
<code> </code><code>bool</code> <code>find = </code><code>false</code><code>;</code>
<code> </code><code>for</code> <code>(j = i, j1 = 0; j < s.length(); j += cycle, j1 += cycle)</code>
<code> </code><code>tmp += s.at(j);</code>
<code> </code><code>if</code> <code>(!find)</code>
<code> </code><code>{</code>
<code> </code><code>j1 = j + 2 * minus;</code>
<code> </code><code>}</code>
<code> </code>
<code> </code><code>if</code> <code>(j1 < s.length())</code>
<code> </code><code>tmp += s.at(j1);</code>
<code> </code><code>}</code>
<code> </code><code>return</code> <code>result;</code>
<code>}</code>
2016-08-08 20:30:52
本文轉自313119992 51CTO部落格,原文連結:http://blog.51cto.com/qiaopeng688/1835791