1、树的基本功能的实现(包括桉树状打印二叉树)
关于树的创建可以看看我的另外一篇,可别小看了树的创建,你要是真的把树的创建真真切切的弄懂啦,
那么树后面就好学了很多,否则,很痛苦的;
附链接:https://blog.csdn.net/qq_50504109/article/details/119721763
/**
* 时隔一百年总算学到树啦
* 不容易
*
* 测试用例:AB..CD... 或者 AB.DF..G..C.E.H..
*/
#include<stdio.h>
#include <mm_malloc.h>
typedef struct{
char data;
struct BiNode *LChild;
struct BiNode *RChild;
}BiTNode,*BiTree;
int count = 0;
int depth = 0;
int main(){
void PreCreateBiTree(BiTree *T);
void InCreateBiTree(BiTree *T);
void PostCreateBiTree(BiTree *T);
void PreOrder(BiTree T);
void InOrder(BiTree T);
void PostOrder(BiTree T);
void PreOrderLeaves(BiTree T);
void PostOrderAmountLeaves(BiTree T);
int DCPostOrderAmountLeaves(BiTree T);
int PostTreeDepth(BiTree T);
void PreTreeDepth(BiTree T,int h);
void PrintTree(BiTree T,int nLayer);
BiTree T ;
//先序创建树
PreCreateBiTree(&T);
printf("先序遍历序列为:");
PreOrder(T);
printf("\n中序遍历序列为:");
InOrder(T);
printf("\n后序遍历序列为:");
PostOrder(T);
printf("\n输出叶子结点:");
PreOrderLeaves(T);
printf("\n使用全局变量后序统计叶子结点的数目");
PostOrderAmountLeaves(T);
printf