先放这张图:
可以看出,树是非线性结构;
一、树的概念
树(tree)是n(n>=0)个节点的有限集合T,它满足两个条件:
1)有且仅有一个特定的称为根(root)的节点;
2)其余的节点可以分为m(m>=0)个互不相交的有限结合T1、T2、...、Tm,其中每一个集合又是一棵树,并成为其根的子数(Subtree)。
树的逻辑结构:树中任何节点都可以有零个或多个直接后继节点(子节点),但至多只有一个直接前驱节点(父节点),根节点没有前驱节点,叶节点没有后继节点。
度数:一个节点的子树的个数称为该节点的度数,一棵树的度数是指该树中节点的最大度数;
层数:节点的层数等于父节点的层数加一,根节点的层数定义为一;
深度:树中节点层数的最大值称为该树的高度或深度;
二、二叉树
二叉树(Binary)是n(n>=0)个节点的有限集合