题目:
下述二叉树中,哪一种满足性质:从任一结点出发到根的路径上所经过的结点序列按其关键字有序()
a.二叉排序树
b.哈夫曼树
c.avl树
d.堆
答案:d
解析:
首先a, 二叉排序树(B树即为二叉搜索树或称二叉排序树(Binary Sort Tree),也有叫二叉查找树的。):
二叉排序树或者是一棵空树,或者是具有下列性质的二叉树:
(1)若左子树不空,则左子树上所有结点的值均小于它的根结点的值;
(2)若右子树不空,则右子树上所有结点的值均大于它的根结点的值;
(3)左、右子树也分别为二叉排序树;
比方:
,可见二叉排序树只有中序遍历结果是一个有序序列。
b,哈夫曼树:当用 n 个结点(都做叶子结点且都有各自的权值)试图构建一棵树时,如果构建的这棵树的带权路径长度最小,称这棵树为“最优二叉树”,有时也叫“赫夫曼树”或者“哈夫曼树”。根据赫夫曼树的结构特点我们可以知道,在赫夫曼树中所有的关键字只出现在叶结点上,其非叶结点上并没有关键字值。
c,avl树(平衡二叉树(Balanced Binary Tree或 Height-Balanced Tree)又称AVL树。):本质上是带了平衡功能的二叉查找树(二叉排序树,二叉搜索树)。所以也不能满足需求。
d.堆:是一种特殊的完全二叉树,如:
堆总是满足下列性质:
-
堆中某个节点的值总是不大于或不小于其父节点的值;
-
堆总是一棵完全二叉树。
最终得到的正是一个从任一结点出发到根的路径上所经过的结点序列按其关键字有序的树状结构。
综上所述:选D