您的位置:首页 > 编程语言

二叉树的基本定义域操作代码

2013-10-27 22:48 127 查看
typedef struct btnode *btlink;//二叉树结点结构定义
struct btnode
{
int data;                //储存结点标号
btlink left;             //指向左子树的指针
btlink right;            //指向右子树的指针
}Btnode;

btlink NewBNode()            //创建一个新的树的结点
{
btlink p;
if(p=malloc(sizeof(Btnode))==0)
Error("Exhausted memory.");
else
return p;
}

typedef struct binarytree *BinaryTree;//root是指向树根的指针
typedef struct binarytree
{
btlink root;
}BTree;

BinaryTree BinaryInit()   //Binary将root置为空指针
{
BinaryTree T=malloc(sizeof*T);
T->root=0;
return T;
}

int BinaryEmpty()//检测T的根结点root是否为空指针
{
return T->root==0;
}

int Root(BinaryTree T)//返回根节点的标号
{
if(BinaryEmpty(T))
Error("Tree is Empty.");
return
T->root->data;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: