JavaScript版《剑指offer》刷题(21)从上往下打印二叉树
2019-07-17 09:38
288 查看
1.题目描述
从上往下打印出二叉树的每个节点,同层节点从左至右打印。
2.思路
(通过上面具体例子的分析,我们可以找到从上到下打印二叉树的规律:每次打印一个节点的时候,如果该节点有子节点,则把该节点的子节点放到一个队列的末尾。接下来到队列的头部取出最早进入队列的节点,重复前面的打印操作,直至队列中所有的节点都被打印出来。)
3.代码
/* function TreeNode(x) { this.val = x; this.left = null; this.right = null; } */ function PrintFromTopToBottom(root) { const queue = [], res = []; if (root === null) { return res; } queue.push(root); while (queue.length) { const pRoot = queue.shift(); if (pRoot.left !== null) { queue.push(pRoot.left); } if (pRoot.right !== null) { queue.push(pRoot.right); } res.push(pRoot.val); } return res; }
参考文章:
https://www.cnblogs.com/echovic/p/6482719.html
https://www.geek-share.com/detail/2732998580.html
https://github.com/DavidChen93/-offer-JS-/blob/master/32.1 从上到下打印二叉树(层序遍历).js
相关文章推荐
- 剑指offer系列之21:从上往下打印二叉树
- 《剑指offer》之从上往下打印二叉树
- 剑指offer(24):从上往下打印二叉树
- 剑指Offer面试题:21.从上到下打印二叉树
- 《剑指offer》从上往下打印二叉树
- 《剑指Offer》面试题:从上往下打印出二叉树的每个节点
- 剑指offer-面试题23.从上往下打印二叉树
- 剑指offer面试题23:从上往下打印二叉树
- [置顶] 剑指offer:第23题从上往下打印二叉树-广度遍历
- 《剑指Offer》学习笔记--面试题23:从上往下打印二叉树
- 剑指Offer_22_从上往下打印二叉树
- 剑指offer-从上往下打印二叉树
- 牛客《剑指Offer》从上往下打印二叉树
- 面试题21:从上往下打印二叉树
- 剑指offer_面试题_从上往下打印二叉树
- 剑指offer系列源码-从上往下打印二叉树
- 《剑指Offer》面试题:从上往下打印出二叉树的每个节点
- 《剑指offer》(面试题23):从上往下打印二叉树
- 剑指offer :从上往下打印二叉树
- 剑指offer 面试题23:从上往下打印二叉树(二叉树的层次遍历BFS) 题解