美文网首页
二叉树层序遍历JavaScrip非递归实现方法

二叉树层序遍历JavaScrip非递归实现方法

作者: 草珊瑚_6557 | 来源:发表于2020-02-03 22:17 被阅读0次
const TreeNode = {
    val: 1,
    left: {
      val: 2,
      left: {
        val: 4,
      },
      right: {
        val: 5
      }
    },
    right: {
      val: 3,
      left: {
        val: 6,
      },
      right: {
        val: 7
      }
    }
  };

  const levelOrder = (root) => {
    const queue = [];
    const valArr = [];

    if(root === null){
      return;
    }

    queue.push(root);

    while(queue.length !== 0){
      const cur = queue.pop();
      valArr.push(cur.val);
      if(cur.left){
        queue.unshift(cur.left);
      }
      if(cur.right){
        queue.unshift(cur.right);
      }
    }

    return valArr;
  };

  console.log(levelOrder(TreeNode));

相关文章

  • 算法之二叉树

    二叉树之C++实现 创建二叉树 复制二叉树 先序遍历 递归实现 非递归实现 中序遍历 递归实现 非递归实现 后序遍...

  • 二叉树的各类遍历方法

    二叉树的遍历主要有四种:前序、中序、后序、层序。 遍历的实现方式主要是:递归和非递归。递归遍历的实现非常容易,非递...

  • 【数据结构】【C#】027-二叉树(BT):🌱创建,遍历(非递归

    遍历的实现 上一篇记录了二叉树的四种遍历:先序,中序,后序,层序;有递归实现,也有非递归,递归比较简单,主要探讨非...

  • goLang 二叉树遍历(递归 非递归 前序遍历 中序遍历 后序

    goLang 二叉树遍历(递归 非递归 前序遍历 中序遍历 后序遍历 层序遍历) 前序遍历 中序遍历 后序遍历 代...

  • 二叉树遍历-JAVA实现

    基础二叉树 二叉树遍历分为前序、中序、后序递归和非递归遍历、还有层序遍历。 前序递归遍历算法:访问根结点-->递归...

  • 左神算法笔记——Morris遍历

    基本问题——实现二叉树的前序、中序、后序遍历 (递归、非递归,mirros方法) 递归 递归方式下的前中后遍历 非...

  • 查找目录下所有文件

    非递归,层序遍历的方法 递归查找

  • 二叉树的遍历

    非递归前序遍历 非递归中序遍历 非递归后序遍历 层序遍历

  • 总结

    1、二叉树广度遍历(非递归) 广度遍历非递归实现需要依靠一个队列。 2、二叉树深度遍历(递归与非递归,前序,中序和...

  • Java二叉树的遍历

    Java二叉树的遍历 利用递归和非递归实现二叉树的先序,中序,后序遍历以及使用队列实现二叉树的层次遍历

网友评论

      本文标题:二叉树层序遍历JavaScrip非递归实现方法

      本文链接:https://www.haomeiwen.com/subject/raxlxhtx.html