的描述是错误的。栈可以有【顺序和链式】两种存储方式。★★队列是允许在一段插入,在另一端进行删除的线性表,其特点是【先进先出】。◆循环队列中元素的个数是由队头指针和队尾指针共同决定。循环队列的头指针为fro
t,尾指针为rear,容量为maxSize,则循环队列中元素的个数是rearfro
tmaxSizemod【maxSize】。4、线性链表◆线性链表是线性表的链式存储结构。用链表表示线性表的优点是【便于插入和删除操作】。◆线性链表的存储空间不一定连续,且个元素的存储顺序是任意的。5、树与二叉树◆在树结构中,一个结点所拥有的后件(继)的个数称为该结点的度,所有结点中最大的度称为树的度。二叉树各结点的度只可能取值0、1、2,不可能是其它值。换言之,知道了度
f为1结点数量的前提下,叶子结点或度为2的结点中知道其一,就可以求出总的结点数。★★★下面关于计算结点数量的几个性质,非常重要:1对任意的二叉树,叶子结点的数量,比度为2的结点数量多一个换言之,已知叶子结点的数量,减去1则是度为2的结点数量;已知度为2的结点数量,加上1就是叶子结点数量2完全二叉树如果有N个结点,当N为奇数的时候,叶子结点数为N12,此时二叉树只有度为0的叶子结点及度为2的结点,没有度为1的结点;当N为偶数的时候,叶子结点的数量为N2。注意条件,必须是完全二叉树,当然包括满二叉树3满二叉树第K层上的结点数量为2K1;深度为K的满二叉树,结点总数为2K1。上述的计算公式,关键要能够应用,例如,深度为7的满二叉树,度为2的结点数量是多少?既然是满二叉树,叶子结点的数量就是第7层的结点数量,也就是26,可以算出叶子结点为64,因此度为2的结点数是63叶子结点数减去1。★★★二叉树的前序遍历、中序遍历、后续遍历:前中后三个词是相对于根来讲的,前序是【根左右】,中序是【左根右】,后续是【左右根】。具体操作为:先序遍历DLR访问根结点,按先序遍历左子树,按先序遍历右子树。中序遍历LDR按中序遍历左子树,访问根结点,按中序遍历右子树。后序遍历LRD按后序遍历左子树,按后序遍历右子树,访问根结点。下面以中序遍历为例,来讲解实际的解题方法:对一棵树,将根结点下的左子树用一个椭圆圈起来,右子树也用一个椭圆圈起来。之后,在左子树上标记上1,在根结点标记上2,在右子树上标记上3。对在左边椭圆内的左子树,现在把它单独拿出来分析。把它的左子树圈起来标上r