Construction of optimal binary split trees in the presence of bounded access probabilities

J.H Hester, D.S Hirschberg, L.L Larmore
1988 Journal of Algorithms  
A binary split tree is a search structure combining features of heaps and binary search trees. The fastest known algorithm for building an optimal binary split tree requires (n 4 ) time if the keys are distinct and O(n 5 ) time if the keys are non-distinct. (n 3 ) space is required in both cases. A modi cation is introduced which reduces a factor of n 2 in the asymptotic time to a factor of n lg(n) when the smallest probability of access of any key is (n ). This yields an asymptotic improvement
more » ... any time the smallest access probability is greater than (n 2 ). The space requirement is not a ected. For example, when access probabilities are distinct and the smallest access probability is (1=n), the modi ed algorithm requires only O(n 3 lg n) time (as opposed to the O(n 4 ) result mentioned above). Several natural re nements to the basic modi cation are presented which should improve the time within the same asymptotic order.
doi:10.1016/0196-6774(88)90040-5 fatcat:nb5lofcja5cchk7gcd37tqbv6u