C语言顺序树输出

it2025-10-31  13

#include<stdio.h> #include<stdlib.h> typedef char M; typedef struct node{ M data; struct node *lchild,*rchild; }BiTNode,*BinTree; void createBinTree_Pre(BiTNode *&T,M pre[],int&n){ M ch=pre[n++]; if(ch==';')return; if(ch!='#'){ T=(BiTNode*)malloc(sizeof(BiTNode)); T->data=ch; createBinTree_Pre(T->lchild,pre,n); createBinTree_Pre(T->rchild,pre,n); } else T=NULL; } void PrintBinTree(BiTNode*t){ if(t!=NULL){ printf("%c",t->data); if(t->lchild!=NULL||t->rchild!=NULL){ printf("("); PrintBinTree(t->lchild); printf(","); PrintBinTree(t->rchild); printf(")"); } } } void PreOrder_recur(BiTNode*BT){ if(BT!=NULL){ printf("%d",BT->data); PreOrder_recur(BT->lchild); PreOrder_recur(BT->rchild); } } int main() {     BiTNode T;    createBinTree_Pre(&T);    PrintBinTree(&T); } 存在错误

 

转载于:https://www.cnblogs.com/YShen0/p/10936371.html

相关资源:C语言打印二叉树
最新回复(0)