1. 程式人生 > >從上到下列印二叉樹(BFS)

從上到下列印二叉樹(BFS)

藉助一個Queue來實現,這裡我們用Array來實現Queue的功能

    public ArrayList<Integer> PrintFromTopToBottom(TreeNode root) {
        //輔助佇列(先進先出)
        ArrayList<TreeNode> queue = new ArrayList<TreeNode>();
        //儲存數值的陣列
        ArrayList<Integer> list = new ArrayList<Integer>();

        if
(root == null) { return list; } queue.add(root); while(queue.size() != 0) { TreeNode temp = queue.remove(0); list.add(temp.val); if(temp.left != null) { queue.add(temp.left); } if(temp.right !=
null) { queue.add(temp.right); } } return list; }