Leetcode-6. ZigZag Conversion
来源:互联网 发布:手机端回到顶部 js 编辑:程序博客网 时间:2024/06/05 09:39
一、问题描述
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 NA P L S I I GY I RAnd 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"
.二、思路分析
由题可以看出,周期为2*rows-2;除首行和末行外其余的行在每个周期里都有两个字符,,首行和末行只有一个字符该字符距离该行起始字符的位置为2*rows-2-2*i,其中i为当前行数。
三、代码
class Solution {public:string convert(string s, int n) { string res; if (n == 1) { //行数为一,直接返回原字符串 return s; }for (int i = 0; i < n; i++) {for (int j = i; j < s.length(); j += (2*n-2)) {res += s[j];if (i > 0&& i < n-1) {if ((j + 2*n-2-2*i) < s.length()) {res += s[j+2*n-2-2*i];}}}}return res;}};
阅读全文
0 0
- LeetCode 6. ZigZag Conversion
- LeetCode --- 6. ZigZag Conversion
- LeetCode 6.ZigZag Conversion
- [Leetcode] 6. ZigZag Conversion
- 【leetcode】6. ZigZag Conversion
- [LeetCode] 6.ZigZag Conversion
- LeetCode - 6. ZigZag Conversion
- [leetcode] 6. ZigZag Conversion
- Leetcode 6. ZigZag Conversion
- leetcode 6. ZigZag Conversion
- leetcode 6. ZigZag Conversion
- leetcode 6. ZigZag Conversion
- Leetcode 6. ZigZag Conversion
- [leetcode]6. ZigZag Conversion
- [leetcode] 6. ZigZag Conversion
- LeetCode 6. ZigZag Conversion
- LeetCode *** 6. ZigZag Conversion
- leetcode 6. ZigZag Conversion
- STL_queue
- Linux vi编辑后如何进行保存操作
- 深入理解java中的流
- linux下将不同线程绑定到不同core和cpu上 pthread_setaffinity_np——005最全面
- 低估一件事的二级效应
- Leetcode-6. ZigZag Conversion
- 产生随机数
- WebSphere连接池参数详解
- ubuntu 安装pycharm
- bmp图片格式详解
- android中的定时任务
- 关于QueryRunner的使用
- mysql安装(mysql5.7-yum)
- 写入、读出数据