#include<stdio.h>
#include "malloc.h"
typedef char ElemType;
typedef struct BSTNode
{
ElemType data;
struct BSTNode *lchild,*rchild;
}BSTNode,*BSTree;
void insertBSTree(BSTree &T,ElemType s)
{
if(T==NULL)
{
BSTree pNode = (BSTree) malloc(sizeof(BSTNode));
pNode->lchild = NULL;
pNode->rchild = NULL;
pNode->data = s;
T=pNode;
} else if(T->data>s)
{
insertBSTree(T->lchild,s);
} else if(T->data<s)
{
insertBSTree(T->rchild,s);
}
}
BSTree CreateBST()
{
BSTree T=NULL;
char key = '#';
scanf("%c",&key);
while (key!='#')
{
insertBSTree(T,key);
scanf("%c",&key);
}
return T;
}
void InOrderBSTree(BSTree T)
{
if(T!=NULL)
{
InOrderBSTree(T->lchild);
printf("%c\n",T->data);
InOrderBSTree(T->rchild);
}
}
int main()
{
BSTree Q=CreateBST();
InOrderBSTree(Q);
}
二叉排序树的创建
最新推荐文章于 2024-07-12 01:14:17 发布