剑指offer:打印二叉树专题

题型一:从上到下打印二叉树

从上往下打印出二叉树的每个节点,同层节点从左至右打印。

import java.util.ArrayList;
public class Solution{
    public ArrayList<Integer> printFromTopToButtom(TreeNode root){
        ArrayList<Integer> list = new ArrayList<>();
        ArrayList<TreeNode> queue = new ArrayList<>();
        if(root == null)
           return list;
        queue.add(root);
        while(queue.size() > 0){
          TreeNode temp = queue.remove(0);
          if(temp.left != null)
             queue.add(temp.left);
          if(temp.right != null)
             queue.add(temp.right);
          list.add(temp.val);
       }
         return list;
    }
}

题型二:从上到下按层打印二叉树,同一层结点从左至右输出。每一层输出一行。

 

 

 

 

 

 

 

 

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章