您的位置:首页 > 其它

Leetcode 6 ZigZag Conversion 字符串处理

2016-05-06 11:22 543 查看
题意:将字符串排成Z字形。

PAHNAPLSIIGYIR 如果是5的话,是这样排的

P I

AP YR

H L G

N SI

A I

于是,少年少女们,自己去找规律吧

提示:每个Z字形的字符串和原字符串的每个字母的位子一一映射

class Solution {
public:
string convert(string s, int numRows) {
string t = s;
if(numRows == 1) return t;
int k = 0;
for(string::size_type i = 0; i < s.size(); i += 2 * numRows - 2){
t[k++] = s[i];
}
for(int i = 1; i < numRows - 1; ++i){
for(string::size_type j = i; j < s.size(); j += 2 * numRows - 2){
t[k++] = s[j];
if(j + 2 * numRows - 2 - 2 * i< s.size()) {
t[k++] = s[j + 2 * numRows - 2 - 2 * i];
}
}
}
for(string::size_type i = numRows - 1; i < s.size(); i += 2 * numRows - 2){
t[k++] = s[i];
}
return t;
}
};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: