1 / 3
文档名称:

C++二叉树的建立与遍历.doc

格式:doc   大小:23KB   页数:3
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

C++二叉树的建立与遍历.doc

上传人:学习的一点 2021/7/25 文件大小:23 KB

下载得到文件列表

C++二叉树的建立与遍历.doc

相关文档

文档介绍

文档介绍:C++二叉树的建立与遍历
从别处找来几个例子,感觉还可以,同学们拿回去看看吧,有什么地方不懂可以下可以后来实验室问我。[cpp] view plaincopyprint?//==========================================定义头部 #include <iostream> using namespace std; struct BiTNode{ char data; struct BiTNode *lchild, *rchild;//左右孩子 }; BiTNode*T; void CreateBiTree(BiTNode* &T); void Inorder(BiTNode* &T); void PreOrderTraverse(BiTNode* &T); void Posorder(BiTNode* &T); //===========================================主函数 int main(){ cout<<"创建一颗树,其中A->Z字符代表树的数据,用“#”表示空树:"<<endl; CreateBiTree(T); cout<<"先序递归遍历:"<<endl; PreOrderTraverse(T); cout<<endl; cout<<"中序递归遍历:"<<endl; Inorder(T); cout<<endl; cout<<"后序递归遍历:"<<endl; Posorder(T); cout<<endl; return 1;} //=============================================先序递归创建二叉树树 void CreateBiTree(BiTNode* &T){ //按先序输入二叉树中结点的值(一个字符),空格字符代表空树, //构造二叉树表表示二叉树T。 char ch; if((ch=getchar())=='#')T=NULL;//其中getchar()为逐个读入标准库函数 else{ T=new BiTNode;//产生新的子树 T->data=ch;//由getchar()逐个读入来 CreateBiTree(T->lchild);//递归创建左子树 CreateBiTree(T->rchild);//递归创建右子树 } }//CreateTree //===============================================先序递归遍历二叉树 void PreOrderTraverse(BiTNode* &T){ //先序递归遍历二叉树 if(T){//当结点不为空的时候执行 cout<<T->data; PreOrderTraverse(T->lchild);// PreOrd