面试题23从上往下打印二叉树

来源:互联网 发布:如何寻找淘宝达人 编辑:程序博客网 时间:2024/05/21 22:55

面试题23从上往下打印二叉树  思路:本质为树的层序遍历,设立一个队列先将根节点放到队列中。循环终止为队列为空,从上到下从左到右访问即可

#include<iostream>#include<cstdio>#include<cstdlib>#include<stack>#include<queue>using namespace std;  //面试题23从上往下打印二叉树  思路:本质为树的层序遍历,设立一个队列。从上到下访问即可typedef struct BinaryTreeNode{    int data;BinaryTreeNode *left,*right;}BinaryTreeNode;void LevelOrder(BinaryTreeNode*pRoot){     if(pRoot==NULL) {return; } BinaryTreeNode *pNode=pRoot; queue<BinaryTreeNode*> Queue; Queue.push(pNode); while(!Queue.empty()) {     pNode=Queue.front(); Queue.pop(); printf("%d\t",pNode->data); if(pNode->left!=NULL) {     Queue.push(pNode->left); } if(pNode->right!=NULL) {      Queue.push(pNode->right); } }}int main(){   return 0;}


0 0