LeetCode练题六:dfs与bfs

(1)定义树这种数据结构

javascript 复制代码
// 先定义数据结构
const root = {
    val: 1
    children: {
        {
            val:2
            children: {
                {
                    val:4
                },
                {
                    val:5
                }
            }   
        },
        {
            val:3
            children: {
                {
                    val:6
                },
                {
                    val:7
                }
            }
        }
    }
}

(2)dfs深度优先遍历:就是一直让

javascript 复制代码
const dfs = (root) => {
    console.log(root.val)
    root.children.forEach(dfs)
}

(3)bfs广度优先遍历:就是不断出队,然后把自己的孩子放进去

javascript 复制代码
const bfs = (root) => {
    const q = [root]
    while(q.length > 0) {
        const n = q.shift()
        console.log(n)
        n.children.forEach(n => {
            q.push(n)
        })
    }
}
相关推荐
山峰哥12 分钟前
SQL优化从入门到精通:20个案例破解性能密码
数据库·sql·oracle·性能优化·深度优先
m0_629494731 小时前
LeetCode 热题 100-----18.矩阵置零
数据结构·leetcode·矩阵
阿Y加油吧1 小时前
二刷 LeetCode:两道经典贪心题复盘
算法·leetcode·职场和发展
Java成神之路-1 小时前
【LeetCode 刷题笔记】35. 搜索插入位置 | 二分查找经典入门题
算法·leetcode
Navigator_Z12 小时前
LeetCode //C - 1033. Moving Stones Until Consecutive
c语言·算法·leetcode
开开心心就好13 小时前
仅168KB的桌面图标自动隐藏工具
windows·计算机视觉·计算机外设·excel·启发式算法·宽度优先·csdn开发云
xvhao201317 小时前
单源、多源最短路
数据结构·c++·算法·深度优先·动态规划·图论·图搜索算法
We་ct18 小时前
LeetCode 72. 编辑距离:动态规划经典题解
前端·算法·leetcode·typescript·动态规划
m0_6294947319 小时前
LeetCode 热题 100-----17.缺失的第一个正数
数据结构·算法·leetcode
Tisfy19 小时前
LeetCode 0796.旋转字符串:暴力模拟
算法·leetcode·题解·模拟·字符串匹配