判断
In a binary search tree which contains several integer keys including 4, 5, and 6, if 4 and 6 are on the same level, then 5 must be their parent.
很容易被题目带沟里,自然而然觉得4和6分布在5的左右两边,但其实5不一定是4和6的parent,我们也可以画出如下结构:
即4是右子树,6是左子树的情况。
选择
1、Given the structure of a binary search tree (as shown in the figure), which one of the following insertion sequences is impossible?
根据选项画图即可,以C选项(错误项)为例:
与题干结构不符。
2、Given a binary search tree with its preorder traversal sequence { 8, 2, 15, 10, 12, 21 }. If 8 is deleted from the tree, which one of the following statements is FALSE?
我们可以先把原树构建出来:
删除根结点后有两种重建方法,
其一是将2(8的中序遍历前驱)作为根结点,删除8,把2的右子树指向15;
其二是将10(8的中序遍历后驱)作为根结点,把10写入根结点,同时删除原为10的结点。
两种方法对应先序遍历输出分别为A,B选项。
3、Among the following binary trees, which one can possibly be the decision tree (the external nodes are excluded) for binary search?
这道题给我整伤了,因为还没学到决策树,而网上关于决策树的文章大部分都在说机器学习之类的东西,which doesn't make sense to me。
在询问学长并查找了相关资料后,我认为这道题涉及的知识点应该只有一个折半查找判定树。
我们知道在进行二分查找时会涉及到一个mid取值向上或向下取整的问题——尽管这在我另一篇有关二分查找的博文中没有提到——并且一旦进行一次向上/向下取整,后续取整方向都必须与其保持统一。
据此,我们可以看到D选项中左子树4个结点,右子树5个结点,应当保持向下取整。但第二层的第一个结点明显是左多右少,也就是又进行了向上取整,故错误。
同理,B,C选项的树都是轴对称形状,明显没有保持取整方向一致,故也错误。
另:本题似乎为考研真题,然而在网上鲜有解析解答。