标签: arrays binary-search-tree
为什么人们使用二叉搜索树? 为什么不简单地对从最低到最高的数组进行二进制搜索? 对我来说,插入/删除成本似乎是相同的,为什么使用max / min heapify等进程使生活变得复杂?
是否仅仅是因为数据结构中需要随机访问?
答案 0 :(得分:3)
插入费用不一样。如果要在数组中间插入项目,则必须将插入元素右侧的所有元素移动一个位置,这样做的努力与数组的大小成正比:O(N)。使用自平衡二叉树,插入的复杂性要低得多:O(ln(N))。