老师,广度优先遍历这样不行吗

来源:8-10 【连环问】深度优先遍历可以不用递归吗

倾城一笑stu

2022-05-06

    function breadthFirstTraverse(root) {
        const queue = [] // 数组 vs 链表

        // 根节点入队列
        queue.push(root)   // 改成push

        while (queue.length > 0) {
            const curNode = queue.shift()  // 改成shift
            if (curNode == null) break

            visitNode(curNode)

            // 子节点入队
            const childNodes = curNode.childNodes
            if (childNodes.length) {
                childNodes.forEach(child => queue.push(child)) // 改成push
            }
        }
    }
写回答

1回答

双越

2022-05-06

可以的,能通过单元测试即可。

0
0

2周刷完100道前端优质面试真题 双越最新力作

『前端面试真题100道』视频详解

1512 学习 · 642 问题

查看课程