把二叉树打印成多行
来源:互联网 发布:linux内核架构 编辑:程序博客网 时间:2024/05/29 07:19
package 把二叉树打印成多行;import java.util.ArrayList;import java.util.LinkedList;import java.util.Queue;class TreeNode { int val = 0; TreeNode left = null; TreeNode right = null; public TreeNode(int val) { this.val = val; }}public class Solution { ArrayList<ArrayList<Integer>> res = new ArrayList<ArrayList<Integer>>(); ArrayList<ArrayList<Integer>> Print(TreeNode pRoot) { if (null == pRoot) { return res; } Queue<TreeNode> q = new LinkedList<TreeNode>(); q.add(pRoot); int size = 1; int lo = 0; int newSize = 0; int index = 0; res.add(new ArrayList<Integer>()); while (!q.isEmpty()) { // ArrayList<Integer> als = new ArrayList<Integer>(); while (lo < size) { TreeNode tn = q.poll(); res.get(index).add(tn.val); if (tn.left != null) { q.add(tn.left); newSize++; } if (tn.right != null) { q.add(tn.right); newSize++; } lo++; } if (!q.isEmpty()) { index++; res.add(new ArrayList<Integer>()); } size = newSize; newSize = 0; lo = 0; } return res; }}
0 0
- 把二叉树打印成多行
- 把二叉树打印成多行
- 把二叉树打印成多行
- 把二叉树打印成多行
- 把二叉树打印成多行
- 把二叉树打印成多行
- 把二叉树打印成多行
- 把二叉树打印成多行
- 把二叉树打印成多行
- 把二叉树打印成多行
- 把二叉树打印成多行
- 把二叉树打印成多行
- 把二叉树打印成多行
- 把二叉树打印成多行
- 把二叉树打印成多行
- 把二叉树打印成多行
- 把二叉树打印成多行
- 把二叉树打印成多行
- Java 集合深入理解(16):HashMap 主要特点和关键方法源码解读
- 可执行程序工作目录
- easyUI日常问题之datagrid表格时间类型转换
- 11090最大m段乘积和最小m段和-动态规划
- StringTokenizer初步了解
- 把二叉树打印成多行
- 操作系统实践之第二章(特权级变换*实战篇)
- 智慧北京:handler机制
- Handler机制的原理
- Swift3.0学习笔记-Protocols
- 本地启动tomcat的时候报java.util.concurrent.ExecutionException: java.lang.OutOfMemoryError: PermGen space
- 数据结构——树的遍历
- hdu1082
- Java 多线程(五) 多线程的同步