// Type your C++ code and click the "Run Code" button! // Your code output will be shown on the left. // Click on the "Show input" button to enter input data to be read (from stdin). #include <iostream> #include <queue> using namespace std; typedef struct Node { int data; struct Node *lchild; struct Node *rchild; } TNode; typedef TNode * BinTree; void layer_traver(BinTree BT){ queue<BinTree> q; BinTree p=BT; if(p!=NULL){ q.push(p); } while(!q.empty()){ p = q.front(); q.pop(); cout<<p->data<<endl; if(p->lchild!=NULL) q.push(p->lchild); if(p->rchild!=NULL){ q.push(p->rchild); } } } int main() { TNode rl = {data:2, lchild:NULL, rchild:NULL}; TNode rr = {data:3, lchild:NULL, rchild:NULL}; TNode root = {data:1, lchild:&rl, rchild:&rr}; layer_traver(&root); return 0; }
欢迎关注微信公众号——计算机视觉:
相关推荐
实现树的层次遍历 利用c++代码实现。。。。。。。
使用C++模板、类的技术实现了二叉树的中序遍历,在BC3.1已经测试成功
层次遍历二叉树
目前二叉树普遍用的层次遍历方式是非递归的堆方式,有些考题考了如何用递归方式层次遍历
二叉树的层次遍历 该程序使用队列实现了二叉树的层次遍历,同时使用了广义表表示法来创建二叉树。程序先创建好一棵二叉树,然后调用 levelOrder 函数即可得到该二叉树的层次遍历结果。
实现二叉树类,包含层次遍历、调试工程 按照普通的二叉树输入方法进行输入,空节点还是用@表示。 例如输入以下这棵树: A / \ B C / \ D E / \ F G 输入根节点:A 输入A的两个儿子(@表示空节点):BC 输入B的两...
用c++代码实现数据结构中,二叉树的前序遍历,中序遍历,后序遍历的算法 为大家提供学习与参考
使用二叉树的链式存储结构,运用二叉树的先序,中序,后序遍历递归实现二叉树遍历,二叉树的构造通过先序序列、线序序列和中序序列、拷贝构造函数构造完成,实现了二叉树节点个数计算,高度计算,关键值查找,节点的...
二叉树的层次遍历 #include #include using namespace std; #define ElemType char #define maxSize 100 typedef struct Tree{ ElemType data; struct Tree * rchild; struct Tree * lchild; }Tree,*Treep; /*...
深度优先遍历的实现; 广度优先遍历的实现;
假设树用静态二叉链表存储,对树进行层次遍历。
建立二叉树,实现二叉树的先序、中序、后序的递归遍历算法,输出遍历结果。 实现二叉树的先序、中序、后序和层次遍历的非递归算法,输出遍历结果。
自己写得二叉树的遍历程序,包括递归遍历,栈的非递归遍历和队列的层次遍历,已在VC中运行通过,希望以此与大家交流交流,如有不妥之处希望大家能帮我修正,本着共同进步的目的。
二叉树几种遍历方式的非递归版本 先序遍历 中序遍历 后序遍历 层次遍历
二叉树的层次遍历,思路与实现
Status LevelOrderTraverse(bintree T,Status visit(TElemType e)) { LinkQueue Q; bintree p; InitQueue(Q); //初始化队列Q,用于保存当前结点左右孩子 if (T == NULL) return ERROR;...
(1)建立的二叉树; 节点的结构体为: typedef struct { int num; /学号 char name[10];...从上至下,从左向右层次遍历;从上至下,从右向左层次遍历; (3)给出程序和每种遍历程序的结果。
c++代码,能够根据前序序列、中序序列生成二叉树;能够一步生成,也可以一步步自动生成。 设计前序遍历,中序遍历,后序遍历,层次遍历;
二叉树遍历问题 //二叉树的结构定义 typedef struct csNode { char data; struct csNode*lchild; struct csNode*rchild; } Csnode,*tree; //二叉树的建立 void CreatTree(tree *T) { char ch; cin>>ch; ...
用c++的模板类来实现二叉树,其中包含前序遍历,中序遍历,后序遍历,以及层次遍历。用了递归和非递归2中方法