06. Z字形变更

开发者 2024-10-9 01:31:41 126 0 来自 中国
06. Z字形变更

难度中等610收藏分享切换为英文关注反馈
将一个给定字符串根据给定的行数,以从上往下、从左到右举行 Z 字形分列。
比如输入字符串为 "LEETCODEISHIRING" 行数为 3 时,分列如下:
L   C   I   RE T O E S I I GE   D   H   N之后,你的输出必要从左往右逐行读取,产生出一个新的字符串,比如:"LCIRETOESIIGEDHN"。
请你实现这个将字符串举行指定行数变更的函数:
string convert(string s, int numRows);示例 1:
输入: s = "LEETCODEISHIRING", numRows = 3输出: "LCIRETOESIIGEDHN"示例 2:
输入: s = "LEETCODEISHIRING", numRows = 4输出: "LDREOEIIECIHNTSG"解释     D     RE   O E   I IE C   I H   NT     S     G解法一:利用周期特性

根据z字分列的特性,发现字符串成周期分列,周期为2 * numRows -2,
发现第n行的元素,为每个周期的第i个大概第(周期-i)个
您需要登录后才可以回帖 登录 | 立即注册

Powered by CangBaoKu v1.0 小黑屋藏宝库It社区( 冀ICP备14008649号 )

GMT+8, 2024-11-21 20:09, Processed in 0.152508 second(s), 33 queries.© 2003-2025 cbk Team.

快速回复 返回顶部 返回列表