• 又叫宽度优先搜索,原理是从根结点开始,沿着树的宽度遍历树的结点。如果所有结点均被访问,则算法中止
    1. // 题目:从上到下打印出二叉树的每个节点,同一层的节点按照从左到右的顺序打印
    2. // 解法:广度优先搜索 + 队列结构
    3. const write = (root) => {
    4. if (!root) return []
    5. let queue = [root]
    6. let res = []
    7. while (queue.length) {
    8. let n = queue.shift()
    9. res.push(n.val)
    10. n.left && queue.push(n.left)
    11. n.right && queue.push(n.right)
    12. }
    13. return res
    14. }