LeetCode6-Z字形变换
题目
将一个给定字符串根据给定的行数numRows,以从上往下、从左到右进行 Z 字形排列。
比如输入字符串为 “LEETCODEISHIRING” 行数为 3 时,排列如下:
之后,你的输出需要从左往右逐行读取,产生出一个新的字符串,比如:“LCIRETOESIIGEDHN”。
思路
利用长度为numRows的数组,第i个元素表示第i行包含的字符。利用flag控制Z字前进方向,如果当前在第一行或最后一行则改变Z字前进方向。
代码
class Solution:def convert(self, s: str, numRows: int) -> str:if numRows<2:return sresult=["" for i in range(numRows)]#创建长度为numRows的空数组flag,i=-1,0for a in s:#遍历字符串result[i]+=a#第i行加上对应字符if i == 0 or i == numRows-1:#改变Z字前进方向flag=-flagi+=flagreturn "".join(result)#数组合成字符串
LeetCode6-Z字形变换相关推荐
- leetcode6. Z 字形变换
将一个给定字符串根据给定的行数,以从上往下.从左到右进行 Z 字形排列. 比如输入字符串为 "LEETCODEISHIRING" 行数为 3 时,排列如下: L C I ...
- leetcode6 Z字形变换 python
题目: 将字符串 "PAYPALISHIRING" 以Z字形排列成给定的行数: P A H N A P L S I I G Y I R之后从左到右"PAHNAPLSIIG ...
- leetcode题库:6. Z字形变换
题目: /**题目:6. Z字形变换(题目地址:https://leetcode-cn.com/problems/zigzag-conversion/description/) * 将字符串 &qu ...
- Z 字形变换 C++实现 java实现 leetcode系列(六)
Z 字形变换 java实现 C++实现 将一个给定字符串根据给定的行数,以从上往下.从左到右进行 Z 字形排列. 比如输入字符串为 "LEETCODEISHIRING" 行数为 ...
- java z+_Java Z 字形变换
– 题目:Z 字形变换 将一个给定字符串根据给定的行数,以从上往下.从左到右进行 Z 字形排列. 比如输入字符串为 "LEETCODEISHIRING" 行数为 3 时,排列如下: ...
- 【LeetCode】6.Z 字形变换
6.Z 字形变换 我的思路貌似没有第二家,不过我懒得解释了. #include <string> #include <iostream> using namespace std ...
- LeetCode Algorithm 6. Z 字形变换
6. Z 字形变换 Ideas 这题的思路其实只要想到了就很简单,首先创建一个numRows行的矩阵,每一行用来存Z字变换后每一行的字符,然后遍历字符串s,其实就是从上往下然后从下往上填充到每一行,所 ...
- [模拟|字符串] leetcode 6 Z字形变换
[模拟|字符串] leetcode 6 Z字形变换 1.题目 题目链接 将一个给定字符串根据给定的行数,以从上往下.从左到右进行 Z 字形排列. 比如输入字符串为 "LEETCODEISHI ...
- leetcode第六题Z字形变换心得记录
算法学习之路-坚持走下去 Z字形变换 题目描述 将一个给定字符串根据给定的行数,以从上往下.从左到右进行 Z 字形排列. 比如输入字符串为 "LEETCODEISHIRING" 行 ...
- LeetCode——6. Z 字形变换
6. Z 字形变换(中等难度) 题目描述: 将一个给定字符串 s 根据给定的行数 numRows ,以从上往下.从左到右进行 Z 字形排列. 比如输入字符串为 "PAYPALISHIRING ...
最新文章
- 4g内存只有1.6g可用_32位系统可用内存小 遇到32位系统内存小的解决方法
- Struts2(批量类型转换器struts2.3.4)
- 推荐一个高质量的git命名查询和学习的github仓库git-recipes
- mac SecureCRT设置
- c++面向对象高级编程 学习十 function-like classes
- 推荐两个漂亮的编程字体
- QODBC查询Oracle中文乱码问题
- 安卓手机投屏到台式电脑非常简单,系统工具就成
- 跳槽理由—你的跳槽理由合理吗
- 【MATLAB图像处理】图像复原
- PS更新升级Adobe Camera Raw(ACR)15.3
- python俄罗斯方块小游戏实验报告,童年的记忆——如何用python写一个俄罗斯方块小游戏!...
- E-Training在线学习系统(汉堡王定制版)
- 医用IT隔离电源在医院特殊场所接地系统的应用
- 【FLASH存储器系列六】SPI NOR FLASH芯片使用指导之二
- 阿里云IoTStudio中的“移动可视化开发” 重新登场了--让开发APP不再难
- 用标签打印软件制作矢量格式的条码
- 漏洞复现----12、Apache Flink目录穿越漏洞(CVE-2020-17519 )
- cmstop传递什么控制器和方法---就实例化该控制器
- WPF和Silverlight到底有什麼不同?
热门文章
- 云原生时代下的12-factor应用与实践
- 一起来造一个RxJava,揭秘RxJava的实现原理
- 使用Spring Cloud Feign作为HTTP客户端调用远程HTTP服务
- 数据库:B+树索引和Hash索引得区别
- mysql子查询教行子查询_MySQL中列子查询与行子查询操作的学习教程
- springboot 整合mybatis_SpringBoot整合MyBatis框架快速入门
- 线程的几种状态_拜托:不要再问我线程有多少种状态了
- “东数西算”工程正式启动,全面解读来了!
- 有一种灾难,叫数据中心被大火烧了
- qt定时器是阻塞的吗_吊打面试官 | 面试官:TCP真的可靠吗