剑指offer-面试题23 分层遍历二叉树
2017-04-01 09:44
141 查看
//从上到下,从左到右,分层打印二叉树 //从上到下按层遍历二叉树,从本质上讲就是广度优先遍历二叉树,不管是广度优先遍历二叉树还是图,都要用到一个队列第一步我们把起始节点放入队列,接下来每次从队列头部取一个节点,遍历这个节点之后把从它能到达的节点(对于树来说是子节点)都一次放入队列,我们重复这个便利过程,直到队列为空为止. #include<iostream> #include<queue> using namespace std; typedef struct Tree* Node; struct Tree { Node Left; Node Right; int Value; }; //每次弹出父节点打印时,都将左右子节点入队. void PrintTreeByLayer(struct Tree* BinaryTree) { if(BinaryTree == NULL) return; queue<Node> queNode; queNode.push(BinaryTree); while(queNode.size()) { Node node = queNode.front(); queNode.pop(); cout<<node->Value<<", "; if(node->Left) queNode.push(node->Left); if(node->Right) queNode.push(node->Right); } }
相关文章推荐
- 剑指offer 面试题23:从上往下打印二叉树(二叉树的层次遍历BFS) 题解
- 剑指offer 面试题23 按层遍历二叉树
- 《剑指offer》面试题23 从上往下打印二叉树
- 剑指Offer:面试题23——从上往下打印二叉树(java实现)
- 剑指offer 面试题23 从上到下打印二叉树
- 面试题23:二叉树层序遍历
- 面试题23:从上往下打印二叉树(层序遍历) && 面试题25:二叉树中和为某一值的路径
- 剑指offer之面试题23:从上往下打印二叉树
- 剑指offer 23----二叉树的前序、中序、后序、层序遍历
- 剑指offer-面试题24-二叉树的后序遍历序列
- 剑指Offer----面试题23:从上往下打印二叉树(层序遍历)
- 《剑指offer》(面试题23):从上往下打印二叉树
- 剑指Offer面试题22栈的压入弹出序列,面试题23从上到下打印二叉树(层序遍历用队列)
- 剑指offer-面试题23.从上往下打印二叉树
- 剑指offer面试题23:从上往下打印二叉树
- 面试题23:从上到下层次遍历二叉树
- 剑指offer--面试题23:从上往下打印二叉树
- 剑指offer面试题23:从上到下打印二叉树(树的层序遍历)
- 剑指offer面试题23:从上往下打印二叉树 Java实现
- 剑指Offer_面试题23_从上到下打印二叉树(层序遍历)