Binary.h
#include <iostream>
using namespace std;
typedef struct BiTNode
{
struct BiTNode *lchild;
struct BiTNode *rchild;
int data;
}BiTNode, *BiTree;
void CreateBinaryTreeNode(BiTree *pNode, int value);
void ConnectTreeNodes(BiTree pParent, BiTree pLeft, BiTree pRight);
void DestroyTree(BiTree pRoot);
Binary.cpp
#include "Binary.h"
void CreateBinaryTreeNode(BiTree *pNode, int value)
{
(*pNode) = new BiTNode[1];
(*pNode)->data = value;
(*pNode)->lchild = NULL;
(*pNode)->rchild = NULL;
}
void ConnectTreeNodes(BiTree pParent, BiTree pLeft, BiTree pRight)
{
if(pParent != NULL)
{
pParent->lchild = pLeft;
pParent->rchild = pRight;
}
}
void DestroyTree(BiTree pRoot)
{
if(pRoot)
{
DestroyTree(pRoot->lchild);
DestroyTree(pRoot->rchild);
delete pRoot;
}
}