继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

【学习打卡】第18天 数据结构和算法

康遇
关注TA
已关注
手记 76
粉丝 3
获赞 9

遍历json的所有值并输入响应的路径

利用深度优先遍历的思路来遍历json数据结构

const json = {
  a: {
    b: {
      c: 1
    }
  },
  d: [1, 2]
}

const dfs = (n, path) => {
  console.log(n, path)
  Object.keys(n).forEach(k => {
    dfs(n[k], path.concat(k))
  })
}
dfs(json, [])

小结

1、树是一种分层的数据抽象模型,普通树可以用Object和Array来表示
二叉树可以用Object来表示

2、树的深度优先遍历和树的广度优先遍历
(1)深度优先遍历:访问根节点,对根节点的children进行深度优先遍历
(2)声明一个队列,根节点放入队列,然后根节点出队,根节点的children入队,重复出队入队的操作,直至队列为空

3、二叉树的先中后序遍历
(1)先序遍历的访问顺序是 根 —> 左 —> 右
(2)中序遍历的访问顺序是 左 —> 根 —> 右
(3)后序遍历的访问顺序是 左 —> 右 —> 根
(4)先中后序的的递归实现和非递归实现

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP