在半连续列表的二分搜索上使用二分搜索树是否有现实世界的理由?

我正在观看关于算法的大学讲座,似乎其中许多课程几乎完全依赖某种特定类型的二叉搜索树来进行查询/数据库/搜索任务。

我不明白这种对Binary Search Trees 的痴迷。似乎在绝大多数情况下,在静态数据的情况下,BSP 可以用排序数组替换,如果插入动态发生,则可以用排序的桶列表替换,然后可以对它们进行二分搜索

通过这种方法,你会得到相同的算法复杂性(至少查询)为BST,方式更好的高速缓存一致性,这样少的内存碎片(取决于你是用什么语言少GC allocs),并有可能要简单得多写。

基本问题是 BSP 完全没有内存——他们的重点完全是 O(n) 复杂性,他们忽略了内存碎片和缓存一致性的非常真实的性能考虑......我错过了什么吗?

以上是在半连续列表的二分搜索上使用二分搜索树是否有现实世界的理由?的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>