zoukankan      html  css  js  c++  java
  • 树四:从上往下打印二叉树

    /**
     * 题目:从上往下打印二叉树
     * 描述:从上往下打印出二叉树的每个节点,同层节点从左至右打印。
     * 方案:
     *  思路:使用两个队列一个存放节点,一个存放值。先将根节点加入到队列中,然后遍历队列中的元素,遍历过程中,
     *   访问该元素的左右节点,再将左右节点加入到队列中来。
     *
     * */

    public class Four {
    
        public static ArrayList<Integer> one(TreeNode node) {
            ArrayList<Integer> list = new ArrayList<>();
            
            if (node ==null) {
                return list;
            }
            Queue<TreeNode> queue = new LinkedList<>();
            queue.offer(node);  //添加一个元素
            
            while(!queue.isEmpty()) {
                TreeNode treeNode = queue.poll();//返回队列的元素
                list.add(treeNode.var);
                if(treeNode.left !=null) {
                    queue.offer(treeNode.left);
                }
                if(treeNode.right !=null) {
                    queue.offer(treeNode.right);
                }            
            }        
            return list;
        }    
    }
    天助自助者
  • 相关阅读:
    2.5 整数和算法
    斑马问题
    计算机硬件操作
    幸福是什么
    英译汉技巧
    指令
    计算机性能
    硬盘容量的计算方法
    Symmetric Tree
    Same Tree
  • 原文地址:https://www.cnblogs.com/ZeGod/p/9969497.html
Copyright © 2011-2022 走看看