// 二叉树
typedef struct BiTNode
{
int data;
BiTNode *lchild, *rchild;
}BiTNode, *BiTree;
// 定义一个结构的二叉树
// 初始化二叉树
BiTree tree;
tree = new BiTNode;
tree->data = "A";
BiTNode *p;
// 初始化二叉树
BiTree tree;
tree = new BiTNode;
tree->data = "1";
BiTNode *p;
p = new BiTNode;
p->data="2";
p->lchild=NULL;
p->rchild=NULL;
tree->lchild=p;
p = new BiTNode;
p->data="3";
p->lchild=NULL;
p->rchild=NULL;
tree->rchild=p;
p = new BiTNode;
p->data="4";
p->lchild=NULL;
p->rchild=NULL;
tree->lchild->rchild=p;
p = new BiTNode;
p->data="6";
p->lchild=NULL;
p->rchild=NULL;
tree->lchild->rchild->lchild=p;
p = new BiTNode;
p->data="5";
p->lchild=NULL;
p->rchild=NULL;
tree->rchild->rchild=p;
// 前序遍历
void PreOrder(BiTree &T)
{
if(T)
{
cout<<T->data;
PreOrder(T->lchild);
PreOrder(T->rchild);
}
}
// 中序遍历
void InOrder(BiTree &T)
{
if(T)
{
InOrder(T->lchild);
cout<<T->data;
InOrder(T->rchild);
}
}
// 后序遍历
void PostOrder(BiTree &T)
{
if(T)
{
PostOrder(T->lchild);
PostOrder(T->rchild);
cout<<T->data;
}
}
PreOrder(tree);
cout<<"\n";
InOrder(tree);
cout<<"\n";
PostOrder(tree);
/*
124635
264135
642531
*/
二叉树
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- Tree 树是一种数据结构,由n(>=0)个有限节点Node组成的一个具有层次关系的集合。 树的特点 每个子节点都...
- 1. 树结构示意图 补充: 兄弟节点:具有相同父节点的节点互称为兄弟节点。 树的深度:从根节点开始(其深度为0)自...
- [toc] 树 二叉树 定义 : 每个结点至多拥有两棵子树(即二叉树中不存在度大于2的结点),并且,二叉树的子树有...
- 1. 3分钟理解完全二叉树、平衡二叉树、二叉查找树 完全二叉树: 叶子节点只能分布在树的倒数第1层和倒数第二层,...