首页 > 解决方案 > 这是最优二叉搜索树吗?

问题描述

在这个发布的问题中,图 15.9 (b) 被认为是期望搜索成本为 2.75 的最优树,但是通过将 k_3 子树与叶子 d_0 交换,我们可以获得 2.65 的预期搜索成本,我的推理有什么不正确的吗?

标签: binary-search-treedynamic-programming

解决方案


正如你在书中看到的那样 K = {k1; k2;:::;kn} 的 n 个不同键按排序顺序(因此 k1 < k2 < k3< k4 < k5)

因为图 15.9 (a) 和图 15.9 (b) 都是 BST,所以如果使用前序遍历,它们的顺序相同:k1=>k2=>k3=>k4=>k5

通过将 k_3 子树与叶子 d_0 交换,如果您使用前序遍历,顺序将会改变:k3=>k1=>k2=>k4=>k5


推荐阅读