二叉排序树的操作
来源:互联网 发布:冒险岛079数据库 编辑:程序博客网 时间:2024/05/16 18:42
二叉排序树的建立,中序遍历,前序遍历,后序遍历,计算总结点数,计算树的深度
#include<iostream.h>#include<string.h>typedef struct Node{int element;struct Node * Lchild;struct Node * Rchild;}*Tree,TNode;//二叉排序树的建立void creatTree(Tree& T,int m){if(T==NULL){T=new TNode;T->element=m;T->Lchild=T->Rchild=NULL;return ;}if(m<(T->element)) creatTree(T->Lchild,m);else creatTree(T->Rchild,m);}//前序遍历void PreOrder(Tree T){if(T){cout<<T->element<<' ';PreOrder(T->Lchild);PreOrder(T->Rchild);}}//中序遍历void InOrder(Tree T){if(T){InOrder(T->Lchild);cout<<T->element<<' ';InOrder(T->Rchild);}}//后序遍历void PostOrder(Tree T){if(T){PostOrder(T->Lchild);PostOrder(T->Rchild);cout<<T->element<<' ';}}//计算节点总数int count(Tree T){if(!T) return 0;else{int m=count(T->Lchild);int n=count(T->Rchild);return m+n+1;}}//计算树的深度int deep(Tree T){if(!T) return 0;int L=deep(T->Lchild);int R=deep(T->Rchild);int max=L>R?L:R;return max+1;}//计算叶子的数量void leaf(Tree T,int &n){if(T){if(!T->Lchild&&!T->Rchild)n++;leaf(T->Lchild,n);leaf(T->Rchild,n);}}/* 方法2:int leaf(Tree T){if(!T)return 0;else if(!T->Lchild&&!T->Rchild)return 1;else return leaf(T->Lchild)+leaf(T->Rchild);}*/int main(){Tree root;root=NULL;int n,num,nleaf;cout<<"个数:";cin>>n;cout<<"依次输入"<<n<<"个数:"<<endl;for(int i=0;i<n;i++){cout<<"输入第"<<i+1<<"个数"<<endl;cin>>num;creatTree(root,num);}cout<<"前序遍历:";PreOrder(root);cout<<endl;cout<<"中序遍历:";InOrder(root);cout<<endl;cout<<"后序遍历";PostOrder(root);cout<<endl;cout<<"count:"<<count(root)<<endl;cout<<"deep:"<<deep(root)<<endl;nleaf=0;leaf(root,nleaf);cout<<"leaf:"<<nleaf<<endl;return 0;}
0 0
- 二叉排序树的基本操作
- 二叉排序树的操作
- 二叉排序树的操作_BinaryOrderTree
- 二叉排序树的基本操作
- 二叉排序树的基本操作
- 二叉排序树的相关操作
- 二叉排序树的查找操作
- 二叉排序树的删除操作
- 二叉排序树的基本操作
- 二叉排序树的删除操作
- 二叉排序树的操作
- 二叉排序树的基本操作
- 二叉排序树的基本操作
- 二叉排序树的基本操作
- 二叉排序树的增删改操作
- 二叉排序树的实现和操作
- 二叉排序树的基本操作测试
- 二叉排序树的一些简单操作
- jsp和Servlet区别
- 网络编程学习_socket辅助函数(一)
- 文件流高级-压缩文件和解压缩
- 操作系统课堂笔记(6)文件管理
- 数据类型
- 二叉排序树的操作
- 【日常】FAB法则在产品设计的应用
- 抽象类
- 向上转型
- nodejs--underscore模块的使用
- android 二维码简化,实现仿qq扫描效果
- python如何安装pip和easy_installer工具
- 视频合并及添加字幕 back音乐
- 用PowerShell批量收回wsp包