LeetCode 刷题 6. Z 字形变换
题目链接点此
思路:根据他要求的行数,创建一个多维数组,然后再以如0123210的等顺序循环给这个多维数组的行赋值,最后将一行行取值拼接即可
class Solution:
def convert(self, s: str, numRows: int) -> str:
if numRows<=1 or len(s)<=1:
return s
i = 0
a = 1
lis = [[] for _ in range(numRows)]
for l in range(len(s)):
if i==0:
a=1
if i==numRows-1:
a=-1
lis[i].append(s[l])
i+=a
li2 = ''.join(str(item) for innerlist in lis for item in innerlist)
return li2