1树的概念【定义】树(Tree)是n(n>0)个结点的有限集合T,它满足如下两个条件:(1)有且仅有一个特定的称为根(Root)的结点;(2)其余的结点可分为m(m≥0)个互不相交的有限集合,其中每一个集合又都是一颗树,并称为根的子树(SubTree)
【基本术语】k1
树的结点包含一个数据元素及若干指向其子树的分支
结点拥有的子树数称为结点的度(degree)
1,A的度为3,C的度为1,F的度为0
度为0的结点称为叶子(leaf)或终端结点
例如K、L、F、G、M、I、J
度不为0的结点称为分支结点或非终端结点
除根结点外,分支结点也称为内部结点
树的度是树内各结点的度的最大值,如图7
1中树的度为3
结点的子树的根称为该结点的孩子(Child),该结点称为孩子的双亲(parent)
1,B为A的子树的根,则B是A的孩子,而A则是B的双亲
同一个双亲的孩子之间互称为兄弟(sibling),例如B、C、D互为兄弟
将这些关系进一步推广,可认为D是M的祖父
结点的祖先是从根到该结点所经分支上的所有结点
例如,M的祖先为A、D、H
反之,结点的子树中的任一结点都称为该结点的子孙,如B的为E、F、K、L
结点的层次(level)是从根开始定义起,根为第一层,根的孩子为第二层
若某结点在第x层,则其子树的根就在x+1层
树中结点的最大层次称为树的高度或深度(depth)
1的树的深度为4
如果将树中的结点的各子树看成从左到右是有次序的(即不能互换),则称该树为有序树,否则称为无序树
2两棵不同的有序树7
森林(forest)是m(m≥0)棵互不相交的树的集合
2二叉树§7
1二叉树的定义二叉树(binarytree)是一种树型结构,它的每个结点至多只有二棵子树(即二叉树中不