let widthTraversal2 = (node) => {
let nodes = []
let stack = []
if (node) {
stack.push(node)
while (stack.length) {
let item = stack.shift()
let children = item.children
nodes.push(item)
for (let i = 0; i < children.length; i++) {
stack.push(children[i])
}
}
}
return nodes
}
深度优先遍历(DFS),使用的是递归方法,比较通用。
广度优先遍历(BFS)是先遍历第一层,然后遍历第二层,层层遍历的方式。