新博文地址:[leetcode]ZigZag Conversion
http://oj.leetcode.com/problems/zigzag-conversion/
写道
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".
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 class Solution { public String convert(String s, int nRows) { if(nRows == 1){ return s; } int strLength = s.length(); StringBuilder sb = new StringBuilder(); for (int i = 0; i < nRows; i++) { if (i == 0 || i == nRows - 1) { for (int m = 0; i + m * 2 * (nRows - 1) < strLength; m++) { sb.append(s.charAt(i + m * 2 * (nRows - 1))); } } else { for (int m = 0; 2 * m * (nRows - 1) + i < strLength || 2 * (m + 1) * (nRows - 1) - i < strLength; m++) { sb.append(s.charAt(i + m * 2 * (nRows - 1))); if (2 * (m + 1) * (nRows - 1) - i < strLength) { sb.append(s.charAt(2 * (m + 1) * (nRows - 1) - i)); } } } } return sb.toString(); } }
相关推荐
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) Java AC版本
c c语言_leetcode 0006_zigzag_conversion.zip
java入门 java_leetcode题解之006_ZigZag_Conversion
c语言入门 C语言_leetcode题解之06-zigzag-conversion.c
js js_leetcode题解之6-zigzag-conversion.js
Conversion 7.Reverse Integer 8.String To Integer 9.Palindrome Number 10.String To Integer 11.Container With Most Water 12.Integer To Roman 13.Roman To Integer 289 347 380 442 457 Circular Array Loop ...
* ZigZag转换(ZigZag Conversion):将字符串转换为ZigZag格式。 * 回文数(Palindrome Number):判断数字是否为回文数。 3. 数学运算: * 两个排序数组的中位数(Median of Two Sorted Arrays):计算两个排序...
# [LeetCode](https://leetcode.com/problemset/algorithms/) ![Language](https://img.shields.io/badge/language-Python%20%2F%20C++%2011-orange.svg) [![License]...
Conversion,则可以生成一个空的测试文件以及一个模板代码文件ZigZag_Conversion.cpp,cpp的内容如下: #include "comm_header.h" int main() { int test_cases = input(); for (int i = 1; i <= test_cases; +...
leetcode 2 代码挑战 之字形转换 字符串"PAYPALISHIRING"在给定的行数上以锯齿形图案书写,如下所示:(您可能希望以固定字体显示此图案以获得更好的可读性) P A H N A P L S I I G Y I R 然后逐行阅读: ...
- ZigZag Conversion(Z字形变换):将字符串“PAYPALISHIRING”按照Z字形排列。 - String to Integer (atoi)(字符串转换整数):将字符串转换成整数。 题目难度的标注是按照po主的主观判断来完成的,可能会有一些...
Conversion Easy -> Medium 8 String to Integer (atoi) Easy -> Medium 19 Remove Nth Node From End of List Easy -> Medium 33 Search in Rotated Sorted Array Hard -> Medium 35 Search Insert Position Medium...
6. **ZigZag Conversion** (Medium): 将直行文本转换为锯齿形排列。可以使用两指针分别控制行和列的变化来实现。 7. **Reverse Integer** (Easy): 反转一个整数。需要注意整数溢出的问题,可以使用数学方法避免。 ...
O(n)时间复杂度就可以解决###LeetCode4AddTwoNumbers简单题,注意空指针的情况和进位###LeetCode5LongestPalindromicSubstringO(N^2)的时间复杂度,不知道有没有更快的###LeetCode6ZigZagConversion边界条件一定要想...
leetcode 知乎 此项目介绍 此项目旨在是为leetcode里面的习题提供解析(数据结构相关知识),锻炼了自己,同时也给别人带来了方便。 网站习题链接: ** 作者知乎链接**: ...Conversion Reverse Integer Strin
- ZigZag Conversion: 将字符串从左到右依次在Z字形排列填充到指定的行数。需要找出转换后的字符串。 - String to Integer (atoi): 将字符串转换为整数,需要处理各种边界情况,例如溢出、非法输入等。 - Reverse ...
6. ZigZag Conversion:将字符串按Z字形排列,输出按行读取的字符串。这个问题可以通过模拟Z字形的方式来解决,也可以通过数学的方式确定每个字符应该处于哪一个行。 7. Reverse Integer:这题要求将一个整数反转,...
leetcode ...Conversion Medium com.bcat.algorithms.medium.ZigZagConversionSol 7 Reverse Integer Easy com.bcat.algorithms.easy.ReverseIntegerSol 8 String to Integer (atoi) Medium com.bc
Conversion 中等 7 Reverse Integer 简单 8 String to Integer (atoi) 中等 9 Palindrome Number 简单 11 Container With Most Water 中等 12 Integer to Roman 中等 13 Roman to Integer 简单 14 Longest Common ...
leetcode 分类 Leetcode 总结 (updating) # Title Solution 1 Two ...用unordered_map,降至O(n) ...一个变量存储进位,当l1,l2,进位非均为空时,继续...Conversion 7 Reverse Integer 8 String to Integer (atoi) 9 Palind