剑指offer:从上往下打印二叉树
2017-08-02 09:59
267 查看
题目:从上往下打印出二叉树的每个节点,同层节点从左至右打印。
思路:
每一次打印一个结点的时候,如果该结点有子结点,则把子结点放进队列的末尾。接下来把最早进入队列的头部取出,重复前面的步骤,直至队列里的所有结点都打印完毕。
代码如下:
public class Solution {
public ArrayList PrintFromTopToBottom(TreeNode root) {
ArrayList list = new ArrayList();
if(root==null) return list;
Deque q=new LinkedList();
q.add(root);
while(!q.isEmpty()){
TreeNode t=q.pop();
list.add(t.val);
if(t.left!=null) q.add(t.left);
if(t.right!=null) q.add(t.right);
}
return list;
}
}
思路:
每一次打印一个结点的时候,如果该结点有子结点,则把子结点放进队列的末尾。接下来把最早进入队列的头部取出,重复前面的步骤,直至队列里的所有结点都打印完毕。
代码如下:
public class Solution {
public ArrayList PrintFromTopToBottom(TreeNode root) {
ArrayList list = new ArrayList();
if(root==null) return list;
Deque q=new LinkedList();
q.add(root);
while(!q.isEmpty()){
TreeNode t=q.pop();
list.add(t.val);
if(t.left!=null) q.add(t.left);
if(t.right!=null) q.add(t.right);
}
return list;
}
}
相关文章推荐
- 剑指offer 23 从上往下打印二叉树
- 剑指Offer之 - 从上往下打印二叉树
- 剑指Offer:面试题23 从上往下打印二叉树
- 剑指offer--从上往下打印二叉树
- 【剑指Offer面试题】 九度OJ1523:从上往下打印二叉树
- 剑指offer-07-从上往下打印出二叉树的每个节点,同层节点从左至右打印。
- 剑指offer——面试题23:从上往下打印二叉树
- 【剑指 offer】(二十三)—— 从上往下打印二叉树(或曰层次遍历、广度优先遍历)
- 剑指offer 23 - 从上往下打印二叉树
- 剑指Offer 23题 从上往下打印二叉树 Java版
- 剑指offer-----从上往下打印二叉树
- 剑指Offer面试题23(Java版):从上往下打印二叉树
- 剑指offer-从上往下打印二叉树
- 剑指offer之从上往下打印二叉树
- 剑指Offer面试题23(Java版):从上往下打印二叉树
- 剑指Offer之从上往下打印二叉树
- 剑指offer 从上往下打印出二叉树的每个节点
- 剑指offer-从上往下打印二叉树
- 剑指Offer之面试题23:从上往下打印二叉树
- 剑指offer:从上往下打印二叉树