文章目录
1. 某二叉树共有 399 个结点,其中有 199 个度为 2 的结点,则该二叉树中的叶子结点数为( ) A 不存在这样的二叉树 B 200 C 198 D 199
2.在具有 2n 个结点的完全二叉树中,叶子结点个数为( ) A n B n+1 C n-1 D n/2
3.一个具有767个节点的完全二叉树,其叶子节点个数为() A 383 B 384 C 385 D 386
4.一棵完全二叉树的节点数为531个,那么这棵树的高度为( ) A 11 B 10 C 8 D 12 答案: 1.B 2.A 3.B 4.B
树的概念
树型结构
树是一种重要的非线性数据结构,直观地看,它是数据元素(在树中称为结点)按分支关系组织起来的结构,像自然界中的树那样。树是递归定义的
树结构在客观世界中广泛存在,如人类社会的族谱和各种社会组织机构都可用树形象表示。树在计算机领域中也得到广泛应用,如在编译源程序如下时,可用树表示源源程序如下的语法结构。又如在数据库系统中,树型结构也是信息的重要组织形式之一
一切具有层次关系的问题都可用树来描述。满二叉树,完全二叉树,排序二叉树
为了便于理解,树还有以下重要的概念或表示方法:
节点的度:一个节点所含有的子树的个数就是这个节点的度
树的度:一棵树中所有节点的度的最大值称为该树的度
叶子节点:度为0的结点称为叶子节点
父节点:一个节点含有子节点,那么这个节点就是子节点的父节点
根节点:没有双亲的节点称为根节点
节点的层次:根节点为第一层,根节点的子节点为第二层,以此类推
树的深度:树中节点的最大层次
二叉树
在计算机科学中,二叉树是每个结点最多有两个子树的有序树。通常子树的根被称作“左子树”(left subtree)和“右子树”(right subtree)。二叉树常被用作二叉查找树和二叉堆或是二叉排序树。
注意:
二叉树的每个结点至多只有二棵子树(不存在度大于2的结点)
二叉树的子树有左右之分,次序不能颠倒
二叉树也是递归定义的,其结点有左右子树之分,逻辑上二叉树有五种基本形态:
二叉树的性质
二叉树有许多重要的性质,理解并记忆有助于我们做题
性质1:根节点的层数为1,二叉树第i层上的节点数目最多为2^(i-1)(i>=0)
性质2:根节点的二叉树的深度为1,深度为k的二叉树至多有(2^k)-1个节点(k>=0)
性质3:包含