牛客网剑指offer编程题——从上往下打印二叉树(Java)
来源:互联网 发布:魔兽548数据库 编辑:程序博客网 时间:2024/06/16 22:08
解题思路:从上往下打印,则是父节点—>左子节点—>右子节点的顺序,总的来说顺序是很明确的,左子节点的子节点也优先于右子节点的子节点,所以只要从左往右依次遍历左右子节点,子节点的子节点也能是顺序排列的,队列可以满足该需求
代码如下:
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 { public ArrayList<Integer> PrintFromTopToBottom(TreeNode root) { ArrayList<Integer> list = new ArrayList<Integer>(); LinkedList queue = new LinkedList();if(root == null){ return new ArrayList<Integer>(); } TreeNode temp = root; queue.add(temp); while (!queue.isEmpty()){ temp = (TreeNode)queue.poll(); list.add(temp.val); if(temp.left != null){ queue.add(temp.left); } if(temp.right != null){ queue.add(temp.right); } } return list; }}
end
阅读全文
0 0
- 牛客网剑指offer编程题——从上往下打印二叉树(Java)
- 剑指offer—编程题23(从上往下打印二叉树)
- 《剑指offer》——从上往下打印二叉树
- 剑指offer——从上往下打印二叉树
- 剑指offer——从上往下打印二叉树
- 剑指offer——从上往下打印二叉树
- 剑指offer——从上往下打印二叉树
- 剑指offer—从上往下打印二叉树
- 剑指offer(22)—从上往下打印二叉树
- 剑指offer—从上往下打印二叉树
- 剑指Offer:面试题23——从上往下打印二叉树(java实现)
- 剑指offer java编程——从上往下打印出二叉树的每个节点,同层节点从左至右打印。
- 剑指Offer——(22)从上往下打印二叉树&&层次遍历
- 剑指offer(23)——从上往下打印二叉树
- 剑指offer(24):从上往下打印二叉树
- 剑指offer(19)-从上往下打印二叉树
- 【剑指Offer面试编程题】题目1523:从上往下打印二叉树--九度OJ
- 剑指offer刷题之java实现的从上往下打印二叉树
- CodeForces 660D Number of Parallelograms
- 【软件工程】你的软件给谁用
- codeforces GYM 101431B (STL)
- c++类型转换函数的麻烦及解决方法
- 7.1面向对象(继承中成员方法关系,final关键字,多态,抽象类,接口)
- 牛客网剑指offer编程题——从上往下打印二叉树(Java)
- 初学JavaScript02
- HDU 4614 Vases and Flowers (二分查找+线段树区间更新)
- 初学51单片机(网上教程http://www.51zxw.net/list.aspx?cid=473)
- Markdown pad2激活码(激活秘钥)
- Ext Kerryeas
- 玩转数组(2)
- 华为机试——字符个数统计
- 电脑耳机为什么会有很大噪声