这是我自己的简单理解 对于什么是二叉树。我的个人看法说就是它其实就是先是一个利用递归的方式结构体然后再结构体里面放有数据,放指针,而对应的指针地址本身也是一个结构体就这样,一个无限套娃的形式产生了,有人就会说那不就停不下来了嘛,这样你可以给一个if判断输入,假如你不要了就直接停了它
if(' '==c)//判断传进去数据是否为空或则为空格
{
*T=NULL;//如果为空,则变成空指针没有后来的指向
}
而剩下的就是概念上的东西了
树(Tree)是n(n>=0)个结点的有限集。当n=0时成为空树,在任意一棵非空树中: 有且仅有一个特定的称为根(Root)的结点; 当n>1时,其余结点可分为m(m>0)个互不相交的有限集T1、T2、...、Tm,其中每一个集合本身又是一棵树,并且称为根的子树(SubTree)。
每一个圈圈我们就称为树的一个结点。结点拥有的子树数称为结点的度-(Degree),树的度取树内各结点的度的最大值。 度为0的结点称为叶结点(Leaf)或终端结点; 度不为0的结点称为分支结点或非终端结点,除根结点外,分支结点也称为内部结点。
其他的定义像:斜二叉树,一般普通二叉树,满二叉树,完全二叉树。等概念。
直接画图来得更为清晰。