LeetCode | 6)ZigZag Conversion
2016-10-04 18:31
113 查看
题目
The string “PAYPALISHIRING” is written in a zigzag pattern on a given number of rows like this: (you may want to display this pattern in a fixed font for better legibility)P- - - - A - - - H - - - N
A - P - L - S - I - I - G
Y - - - I - - - - R
And then read line by line: “PAHNAPLSIIGYIR”
Write the code that will take a string and make this conversion given a number of rows:
string convert(string text, int nRows);
convert(“PAYPALISHIRING”, 3) should return “PAHNAPLSIIGYIR”
prototype
class Solution { public: string convert(string s, int numRows) { };
代码
class Solution { public: string convert(string s, int numRows) { string res; vector<string> vstr(numRows); if (numRows == 1) return s; int i{0}, n{0}; while (i < s.size()) { while (i < s.size() && n < numRows - 1) { vstr[n++] += s[i++]; } while (i < s.size() && n > 0) { vstr[n--] += s[i++]; } } for (auto &p : vstr) res += p; return res; } };
相关文章推荐
- leetcode 86: Sum Root to Leaf Numbers
- 数据结构与算法[LeetCode]—N_Queen问题
- [LeetCode] Populating Next Right Pointers in Each Node I, II
- leetcode 题解: Length of Last Word
- LeetCode: Balanced Binary Tree
- LeetCode(155) Min Stack
- [Leetcode]Best Time to Buy and Sell Stock
- leetcode_num6_Zigzag
- Java for LeetCode 050 Pow(x, n)
- [leetcode]Maximum Subarray (C语言)
- [Leetcode] Linked List Cycle II
- LeetCode 072 Edit Distance
- LeetCode 148 Sort List
- 【Leetcode】67. Add Binary
- [leetcode] 138. Copy List with Random Pointer
- 3. Longest Substring Without Repeating Characters : LeetCode 题解
- [leetcode]367. Valid Perfect Square
- LeetCode 8 String to Integer (atoi)
- LeetCode 116 Populating Next Right Pointers in Each Node (二叉树)
- LeetCode179—Largest Number