LeetCode 6. Z 字形变换
程序员文章站
2022-04-17 16:37:31
...
本文为打卡刷Leetcode题系列文章, 这个系列文章的目录都是按照如下四个部分构成
- 题目链接
- 题目描述
- 代码初步
这部分写的是我在刷题过程中的思路,相信在拿到题目就立马参考大神们的思路写代码是不会有进步的,我思故我在,思考让我进步!! - 代码欣赏
这一部分po出优秀的解题答案,这里我们可以学习大神们的解题思路,进而内化成自己的。
题目链接
https://leetcode-cn.com/problems/zigzag-conversion/submissions/
题目描述
代码初步
看到题目就被吓到了,一点思绪没有,后面看到大佬的分享,恍然大悟的感觉,自己怎么这么菜。。。
代码欣赏
代码思路:
按顺序遍历字符串s:
- res[i] += c; 把每个字符串填入对应的行res[i]中
- i + = flag; 更新对应的行索引
- flag = - flag 当行索引为第一行和最后一行时需要反向。
class Solution:
def convert(self, s: str, numRows: int) -> str:
if numRows < 2:
return s
i, flag = 0,-1
res = ["" for _ in range(numRows)]
for c in s:
res[i] += c
if i==0 or i==numRows - 1:
flag = -flag
i = i + flag
return ''.join(res)
上一篇: LeetCode 6. Z字形变换
下一篇: LeeTCode:6. Z 字形变换