leetcode 6/300 Z字型变换 py

题目说明


方法一:利用flag

简单来说就是利用flag来表示方向,真的神来之笔。

class Solution:
    def convert(self, s: str, numRows: int) -> str:
        if numRows < 2: return s
        res = ["" for _ in range(numRows)]#生成一个元素为5个空字符的str格式。
        i, flag = 0, -1
        for c in s:
            res[i] += c#将该字符加入字符串
            if i == 0 or i == numRows - 1: flag = -flag
            i += flag
        return "".join(res)#用于将序列中的元素以指定的字符连接生成一个新的字符串,即按顺序组起来,恰好就是形成Z后按行读的顺序。
'''
详见解析
链接:https://leetcode-cn.com/problems/zigzag-conversion/solution/zzi-xing-bian-huan-by-jyd/
来源:力扣(LeetCode)
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
'''
posted @ 2021-10-24 15:34  xingye_z  阅读(53)  评论(0编辑  收藏  举报