LeetCode(6) ZigZag Conversion解题报告
2017-12-13 15:39
453 查看
z型转换
问题:
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”.
解题方案:
这道题目比较简单,就不做分析了,直接贴代码。
public String convert(String s, int numRows) { StringBuffer[] sbs = new StringBuffer[numRows]; for (int i = 0; i < sbs.length; i++) { sbs[i] = new StringBuffer(); } int flag = 0; int step = -1; for (int i = 0; i < s.length(); i++) { sbs[flag].append(s.charAt(i)); if (flag == numRows - 1 || flag == 0) { step = -step; } flag += step; if (flag < 0) { flag = 0; } if (flag > numRows - 1) { flag = numRows - 1; } } StringBuffer result = new StringBuffer(); for(StringBuffer sb : sbs) { result.append(sb); } return result.toString(); }
相关文章推荐
- Leetcode<6 ZigZag Conversion>解题报告
- [LeetCode] ZigZag Conversion 解题报告
- LeetCode解题报告—— 2 Keys Keyboard & Longest Palindromic Substring & ZigZag Conversion
- 【LeetCode】ZigZag Conversion 解题报告
- LeetCode ZigZag Conversion 解题报告
- [LeetCode 解题报告]006.ZigZag Conversion
- LeetCode: ZigZag Conversion 解题报告
- [LeetCode] ZigZag Conversion 解题报告
- [LeetCode] ZigZag Conversion 解题报告
- [Leetcode] 281. Zigzag Iterator 解题报告
- [Leetcode]解题文档-ZigZag Conversion
- LeetCode解题报告—— Unique Binary Search Trees & Binary Tree Level Order Traversal & Binary Tree Zigzag Level Order Traversal
- Leetcode 103. Binary Tree Zigzag Level Order Traversal 二叉树Zigzag遍历 解题报告
- [leetcode] 281. Zigzag Iterator 解题报告
- 【LeetCode】 Binary Tree Zigzag Level Order Traversal 解题报告
- [Leetcode] 526. Beautiful Arrangement 解题报告
- LeetCode 52. N-Queens II 解题报告
- [Leetcode] 678. Valid Parenthesis String 解题报告
- [leetcode] 112. Path Sum 解题报告
- [leetcode] 107. Binary Tree Level Order Traversal II 解题报告