leetcode 第六题 Z字形变换
题目描述
将一个给定字符串根据给定的行数,以从上往下、从左到右进行 Z 字形排列。
比如输入字符串为 “LEETCODEISHIRING” 行数为 3 时,排列如下:
题目来源
想法
从题目要求看,字符从左到右变化的是行号。根据要求打印的行数看,行号都是一会增加一会减少,具体转变在顶行和最后一行。
代码
展示的是官方给的代码。比自己写的简洁好看很多。tql
public static String convert(String s, int numRows) {
if (numRows == 1) return s;
java.util.List<StringBuilder> rows = new ArrayList<>();
for (int i = 0; i < Math.min(numRows, s.length()); i++)
rows.add(new StringBuilder());
int curRow = 0;
boolean goingDown = false;