一、二叉树的递归定义
1、要么二叉树没有根结点,是一颗空树。
2、要么二叉树由根结点、左子树、右子树组成,且左子树和右子树都为二叉树。
二、二叉树的存储结构与基本操作
1、二叉树的存储结构:
一般来说,二叉树使用链表来定义。和普通链表的区别是,由于二叉树每个结点有两条出边,因此指针域变成了两个-------分别是指向左子树的根结点地址和右子树的根结点地址。如果某个子树不存在,则指向NULL,其他地方和普通链表完全相同,因此又把这种链表叫做二叉链表,其定义方式如下:
struct node{
typename data; //数据域
node* lchild; //指向左子