【前端】深度优先与广度优先
生活随笔
收集整理的這篇文章主要介紹了
【前端】深度优先与广度优先
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
學習DOM-DIFF與Fiber時,常常聽到深度優(yōu)先與廣度優(yōu)先這兩個名詞,本文做下代碼實現(xiàn)與總結
//示例 const root = {name: 'A1',children: [{name: 'B',children: [{name: 'B1'},{name: 'B2'}]},{name: 'C',children: [{name: 'C1'},{name: 'C2'}]}] }//深度優(yōu)先 function dfs(node) {console.log(node.name);node.children?.forEach(dfs); } dfs(root) // A B B1 B2 C C1 C2//廣度優(yōu)先 function bfs(node) {const stack = [];stack.push(node);let current;while((current = stack.shift())) {console.log(current.name);current.children?.forEach(child => {stack.push(child);})} } bfs(root) // A B C B1 B2 C1 C2總結
以上是生活随笔為你收集整理的【前端】深度优先与广度优先的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Oracle数据保护DataGuard安
- 下一篇: Windwos XP 密匙