JZ60-把二叉树打印成多行
把二叉树打印成多行
https://www.nowcoder.com/practice/445c44d982d04483b04a54f298796288?tpId=13&tags=&title=&diffculty=0&judgeStatus=0&rp=1&tab=answerKey
class Solution { ArrayList<ArrayList<Integer>> ret = new ArrayList<>(); ArrayList<ArrayList<Integer>> Print(TreeNode pRoot) { if (pRoot == null) { return ret; } Queue<TreeNode> queue = new LinkedList<>(); queue.add(pRoot); while (!queue.isEmpty()) { int size = queue.size(); ArrayList<Integer> list = new ArrayList<>(); while (size > 0) { TreeNode temp = queue.poll(); list.add(temp.val); if (temp.left != null) { queue.add(temp.left); } if (temp.right != null) { queue.add(temp.right); } size--; } if (list.size() != 0) { ret.add(list); } } return ret; } }