力扣6. Z字形变换

题目来源:力扣
https://leetcode-cn.com/problemset/all/
力扣6. Z字形变换_第1张图片

class Solution:
    def convert(s, numRows):
        
        if numRows < 2: #若行数小于2则直接返回字符串
            return s
        res = ["" for _ in range(numRows)]#创建numRows行列表
        
        i, flag = 0, -1
        for c in s:
            res[i] += c#将字符添加到第i行列表中
            if i == 0 or i == numRows - 1: #若i=0则i开始逐渐增加到最后一行之后行数逐渐减小(利用flag)
                flag = -flag
            i += flag
        return "".join(res)#返回字符串

你可能感兴趣的:(力扣算法题)