您的位置:首页 > 其它

Leetcode 6. Z字形转换

2018-03-02 13:26 381 查看
n=2*(numRows-1);

第一行 +n (+0) +n (+0)…

第二行 +n-2 +2 +n-2 +2 …

第三行 +n-4 +4 +n-4 +4 …

….

第numRows行 (+0) +n (+0) +n …

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