• 技术文章 >Web开发 >JavaScript

    js深度优先遍历的介绍

    小妮浅浅小妮浅浅2021-11-17 15:12:44原创12722

    1、尽可能深的搜索图的分支。常规的深度优先并不会破坏原始数据结构,而是采用 isVisited或者颜色标记法进行表示。

    2、访问根节点,对根节点的没访问过的相邻节点挨个进行深度优先遍历。

    实例

    const graph = {
      0: [1, 2],
      1: [2],
      2: [0, 3],
      3: [3],
    };
    //图的深度优先遍历
    const visited = new Set();
    const dfs = (n) => {
      console.log(n);
      visited.add(n);
      graph[n].forEach((c) => {
        if (!visited.has(c)) {
          dfs(c);
        }
      });
    };
     
    dfs(2); // 2 0 1 3

    以上就是js深度优先遍历的介绍,希望对大家有所帮助。更多js学习指路:js教程

    推荐操作环境:windows7系统、jquery3.2.1版本,DELL G3电脑。

    专题推荐:js 深度优先遍历
    上一篇:js中eval方法是什么 下一篇:js广度优先遍历如何实现

    相关文章推荐

    • js创建构造函数的注意点• js中valueOf和toString的区别• js中构造器属性的介绍• js栈的应用场景• js中的树如何理解• js中ES Module和CommonJs的区别• js作用域链是什么• js声明变量的提升• js中pop和push的比较• js中shift和unshift的对比• js如何检查是否满足条件• js数组归并的方法• js函数中arguments属性是什么• js函数中this如何使用• js中eval方法是什么

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网