leetcode第六题 Z字形变换
题目
将一个给定字符串 s 根据给定的行数 numRows ,以从上往下、从左到右进行 Z 字形排列。
比如输入字符串为 "PAYPALISHIRING" 行数为 3 时,排列如下:
P A H N A P L S I I G Y I R 之后,你的输出需要从左往右逐行读取,产生出一个新的字符串,比如:"PAHNAPLSIIGYIR"。
请你实现这个将字符串进行指定行数变换的函数:
string convert(string s, int numRows);
示例 1:
输入:s = "PAYPALISHIRING", numRows = 3 输出:"PAHNAPLSIIGYIR" 示例 2: 输入:s = "PAYPALISHIRING", numRows = 4 输出:"PINALSIGYAHRPI" 解释: P I N A L S I G Y A H R P I 示例 3:
输入:s = "A", numRows = 1 输出:"A"
代码
class Solution {public String convert(String s, int numRows) {if(numRows < 2){return s;}List<StringBuilder> arrayList = new ArrayList<StringBuilder>();for(int i = 0;i < numRows;i++){arrayList.add(new StringBuilder());}int i = 0,flag = -1;for(char c : s.toCharArray()){arrayList.get(i).append(c);if(i == 0 || i == numRows - 1){flag = -flag;}i = i + flag;}StringBuilder result = new StringBuilder();for(StringBuilder midium : arrayList){result.append(midium);}return result.toString();}
}
leetcode第六题 Z字形变换相关推荐
- leetcode第六题Z字形变换心得记录
算法学习之路-坚持走下去 Z字形变换 题目描述 将一个给定字符串根据给定的行数,以从上往下.从左到右进行 Z 字形排列. 比如输入字符串为 "LEETCODEISHIRING" 行 ...
- leetcode-第六题 Z 字形变换
题目 将一个给定字符串根据给定的行数,以从上往下.从左到右进行 Z 字形排列. 比如输入字符串为 "LEETCODEISHIRING" 行数为 3 时,排列如下: L C ...
- LeetCode第六题Z字变换
将一个给定字符串 s 根据给定的行数 numRows ,以从上往下.从左到右进行 Z 字形排列. 比如输入字符串为 "PAYPALISHIRING" 行数为 3 时,排列如下: P ...
- LeetCode刷题——Z字形变换
目录 一.题目描述 二.题解 三.源码 一.题目描述 二.题解 三.源码 class Solution(object):def convert(self, s, numRows):"&quo ...
- LeetCode刷题笔记第6题:Z字形变换
LeetCode刷题笔记第6题:Z字形变换 想法: 要完成字符串根据给定的行数从上往下,从左到右完成Z字形排列.当只有一行时直接返回原字符串,当行数大于1时,先以行数构建一个行数数值个空字符串的列表, ...
- Z 字形变换 C++实现 java实现 leetcode系列(六)
Z 字形变换 java实现 C++实现 将一个给定字符串根据给定的行数,以从上往下.从左到右进行 Z 字形排列. 比如输入字符串为 "LEETCODEISHIRING" 行数为 ...
- leetcode题库:6. Z字形变换
题目: /**题目:6. Z字形变换(题目地址:https://leetcode-cn.com/problems/zigzag-conversion/description/) * 将字符串 &qu ...
- Java算法题:Z字形变换
Java算法题:Z字形变换 将一个给定字符串 s 根据给定的行数 numRows ,以从上往下.从左到右进行 Z 字形排列. 比如输入字符串为 "PAYPALISHIRING" 行 ...
- java编写字母z算法_【Java】【每日算法/刷穿 LeetCode】6. Z 字形变换(中等)
首页 专栏 java 文章详情 0 [每日算法/刷穿 LeetCode]6. Z 字形变换(中等) 宫水三叶发布于 今天 12:03 题目描述 将一个给定字符串 s 根据给定的行数 numRows , ...
最新文章
- java自动装箱性能
- windows服务程序设置为自动 重启后又变为手动启动_系统小技巧:解决Windows无法正常关机的问题...
- R语言ggplot2可视化彩色水平条形图并基于条形长度和数值标签长度、自定义最优化配置标签在条形内部或者条形外部
- 使用RSS订阅喜欢的微博博主
- 前端学习(3082):vue+element今日头条管理-页面布局
- Linux命令:find命令详解
- Spring第三篇【Core模块之对象依赖】
- Java main()方法
- switch java 语法_Java_基础语法之switch语句
- yield return 和 Func
- WDS+ADK+MDT 部署轻触式系统安装(1)《准备》
- vscode推荐编程字体
- css中背景颜色的代码,css背景代码是什么,css怎么控制背景颜色
- 【华为机试题 HJ102】字符统计
- [转]显卡帝揭秘3D游戏画质特效
- Android中绘制圆角矩形图片及任意形状图片
- 录音艺术与计算机音乐,中国音协录音艺术与唱片学会 2018 青年录音艺术评比(暨第三届 CRA 最佳学生录音作品评选)活动开启...
- 现代计算机领域出现了,时空道路网最近邻查询技术
- 影视网站设计报告代码MySQL_基于PHP的视频网站的设计与实现(MySQL)(含录像)
- 电商网站爬虫案例(1)