我最近听说了三元搜索,我们将一个数组分成 3 个部分并进行比较。这里将进行两次比较,但它将数组减少到 n/3。为什么人们不用这么多?
最佳答案
实际上,人们确实对任意 k 使用 k 叉树。
然而,这是一种权衡。
要在 k 叉树中查找元素,您需要大约 k*ln(N)/ln(k) 次操作(记住换基公式)。 k 越大,您需要的整体操作就越多。
您所说的逻辑扩展是“为什么人们不对 N 个数据元素使用 N 叉树?”。这当然是一个数组。
关于algorithm - 既然有三元搜索,为什么还要用二分搜索呢?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3498382/