我正在试图找出如何创建最佳BST以最小化元素的查找成本。
假设查找元素的成本是(1 +与根的距离)。 因此,根的成本将为1,深度为1的元素的成本将为2等。
假设我有n
个整数元素:x1,x2,...,xn
然后说x1< x2< ......< XN
让我们说以下情况发生:
x1被访问2次
x2被访问4次
x3被访问3次
x4被访问6次
这可以用[2,4,3,6]
这样的数组表示对于这种情况,我认为最佳BST是
Link to image because I'm not allowed to embed yet
这里的总费用是29.
BST可以进一步降低成本吗?
是否存在一种算法,在给定元素和访问次数的情况下,能够生成最佳BST?