class Solution { public String convert(String s, int numRows) { if (s == null || numRows <= 0 || s.equals("")) return ""; if (numRows == 1) return s; List<StringBuilder> rows = new ArrayList<>(); for (int index = 0; index < numRows; index++) rows.add(new StringBuilder()); int flag = -1; int i = 0; for (char ch : s.toCharArray()) { rows.get(i).append(ch); if (i == 0 || i == numRows - 1) flag = -flag; i += flag; } StringBuilder ans = new StringBuilder(); for (StringBuilder currRow : rows) ans.append(currRow); return ans.toString(); }}