剑指Offer--【从上往下打印二叉树】--java
题目描述:
从上往下打印出二叉树的每个节点,同层节点从左至右打印。
解题思路:
使用两个队列一个存放节点,一个存放值。先将根节点加入到队列中,然后遍历队列中的元素,遍历过程中,访问该元素的左右节点,再将左右子节点加入到队列中来
代码如下:
import java.util.ArrayList;
/**
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> intlist=new ArrayList< Integer>();
ArrayList< TreeNode> treeList=new ArrayList< TreeNode>();
if(root==null){
return intlist;
}
treeList.add(root);
for(int i=0;i<treeList.size();i++){
TreeNode node=treeList.get(i);
if(node.left!=null){
treeList.add(node.left);
}
if(node.right!=null){
treeList.add(node.right);
}
intlist.add(node.val);
}
return intlist;
}
}
运行结果:
- 剑指Offer 23题 从上往下打印二叉树 Java版
- 剑指offer--面试题23:从上往下打印二叉树--Java实现
- 剑指Offer面试题23(Java版):从上往下打印二叉树
- 剑指Offer面试题23(Java版):从上往下打印二叉树
- 【剑指offer-Java版】23从上往下打印二叉树
- 剑指offer刷题之java实现的从上往下打印二叉树
- 【剑指Offer面试编程题】题目1523:从上往下打印二叉树--九度OJ
- 剑指offer——从上往下打印二叉树
- 剑指offer—从上往下打印二叉树
- 从上往下打印二叉树 (剑指Offer 第 21 题)
- [剑指offer]从上往下打印二叉树
- 剑指offer: 从上往下打印二叉树(树)
- 剑指offer-从上往下打印出二叉树的每个节点,同层节点从左至右打印。
- 剑指Offer - 九度1523 - 从上往下打印二叉树
- 剑指offer-第四章解决面试题的思路(从上往下打印二叉树)
- 剑指offer--从上往下打印二叉树--层次遍历、广度优先搜索
- 剑指Offer-32 从上往下打印二叉树
- 剑指offer 从上往下打印出二叉树的每个节点
- 剑指Offer-从上往下打印二叉树
- 剑指Offer-23-从上往下打印二叉树