剑指offer——把二叉树打印成多行
来源:互联网 发布:超级搜索软件 编辑:程序博客网 时间:2024/06/06 02:30
题目描述
从上到下按层打印二叉树,同一层结点从左至右输出。每一层输出一行。
关键注意使用队列的size方法来控制层数。
import java.util.ArrayList;import java.util.LinkedList;import java.util.Queue;/*public class TreeNode { int val = 0; TreeNode left = null; TreeNode right = null; public TreeNode(int val) { this.val = val; }}*/public class Solution { ArrayList<ArrayList<Integer> > Print(TreeNode pRoot) { ArrayList<ArrayList<Integer>>lists = new ArrayList<>(); if(pRoot==null)return lists; Queue<TreeNode>queue = new LinkedList<>(); queue.offer(pRoot); while(!queue.isEmpty()){ int len = queue.size(); int i=1; ArrayList<Integer>list = new ArrayList<>(); while(i<=len){ TreeNode node = queue.poll(); list.add(node.val); if(node.left!=null)queue.offer(node.left); if(node.right!=null)queue.offer(node.right); i++; } lists.add(list); } return lists; } }
阅读全文
0 0
- 《剑指offer》——把二叉树打印成多行
- 剑指Offer——把二叉树打印成多行
- 剑指offer——把二叉树打印成多行
- 剑指offer——把二叉树打印成多行
- 剑指offer——把二叉树打印成多行
- 剑指Offer—60—把二叉树打印成多行
- 剑指offer——60.把二叉树打印成多行
- 剑指offer—把二叉树打印成多行
- 剑指offer — 把二叉树打印成多行
- 剑指offer—把二叉树打印成多行
- 剑指offer--把二叉树打印成多行
- 《剑指offer》把二叉树打印成多行
- 剑指Offer--把二叉树打印成多行
- 剑指offer:把二叉树打印成多行
- 剑指offer:把二叉树打印成多行
- [剑指offer]把二叉树打印成多行
- 剑指offer|把二叉树打印成多行
- 【剑指Offer】把二叉树打印成多行
- perl 基本语法
- linux下ftp自动登录的shell脚本
- 福尔摩斯到某古堡探险
- 软件开发中,做产品与做项目有什么区别?
- <label>标签你理解了吗?
- 剑指offer——把二叉树打印成多行
- span标签、strong/b 标签
- 装饰器实现Python web框架路由功能
- cannot perform this action after onsaveinstancestate
- mysql 递归查询
- 【Codeforces 793 A. Oleg and shares】
- Java中使用HttpURLConnection发起POST 请求
- 开启我的技术博客世界
- Linux下添加FTP账号和服务器、增加密码和用户,更改FTP目录