老师,广度优先遍历这样不行吗
来源: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
可以的,能通过单元测试即可。
00
相似问题