6--树的遍历

 2023-09-05 阅读 31 评论 0

摘要:#include <stdio.h> #define ElemType char//节点声明,数据域、左孩子指针、右孩子指针 typedef struct BiTNode{char data;struct BiTNode *lchild,*rchild; }BiTNode,*BiTree;//先序建立二叉树 BiTree CreateBiTree() {char ch;BiTree T;scanf("%c",&
#include <stdio.h>
#define ElemType char//节点声明,数据域、左孩子指针、右孩子指针
typedef struct BiTNode{char data;struct BiTNode *lchild,*rchild;
}BiTNode,*BiTree;//先序建立二叉树
BiTree CreateBiTree()
{char ch;BiTree T;scanf("%c",&ch);if(ch=='#')T = NULL;else{T = (struct BiTNode *)malloc(sizeof(struct BiTNode));T->data = ch;T->lchild = CreateBiTree();T->rchild = CreateBiTree();}return T;//返回根节点
}
//先序遍历二叉树
void PreOrderTraverse(BiTree T){if(T){printf("%c",T->data);PreOrderTraverse(T->lchild);PreOrderTraverse(T->rchild);}
}//中序遍历
void InOrderTraverse(BiTree T){if(T){PreOrderTraverse(T->lchild);printf("%c",T->data);PreOrderTraverse(T->rchild);}
}
//后序遍历
void PostOrderTraverse(BiTree T){if(T){PreOrderTraverse(T->lchild);PreOrderTraverse(T->rchild);printf("%c",T->data);}
}
int main()
{BiTree T;T = CreateBiTree();//建立PreOrderTraverse(T);//输出return 0;
}

 

转载于:https://www.cnblogs.com/hgonlywj/p/4842547.html

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://hbdhgg.com/1/1363.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 匯編語言學習筆記 Inc. 保留所有权利。

底部版权信息