Algorithm n元搜索的时间复杂度。
我正在研究N元素中的二元搜索、三元搜索和k元搜索的时间复杂性,并给出了它们各自的渐近最坏情况运行时。然而,我开始怀疑如果我将N个元素划分为N个范围(或者称为N个元素中的N元搜索),会发生什么。这会是数组中的排序线性搜索,从而导致运行时为O(N)?这有点令人困惑。请帮帮我 你说的是对的 对于Algorithm n元搜索的时间复杂度。,algorithm,time-complexity,binary-search,Algorithm,Time Complexity,Binary Search,我正在研究N元素中的二元搜索、三元搜索和k元搜索的时间复杂性,并给出了它们各自的渐近最坏情况运行时。然而,我开始怀疑如果我将N个元素划分为N个范围(或者称为N个元素中的N元搜索),会发生什么。这会是数组中的排序线性搜索,从而导致运行时为O(N)?这有点令人困惑。请帮帮我 你说的是对的 对于k-ary搜索,我们有: 执行k-1检查边界以隔离k范围之一 跳入从上面获得的范围 因此,时间复杂度基本上是O((k-1)*log_k(N)),其中log_k(N)意味着“log(N)到基k”。这在k=2时有一
k-ary
搜索,我们有:
k-1
检查边界以隔离k
范围之一O((k-1)*log_k(N))
,其中log_k(N)
意味着“log(N)
到基k
”。这在k=2
时有一个最小值
如果k=N
,时间复杂度将是:O((N-1)*log_N(N))
=O(N-1)
=O(N)
,这在算法和复杂度方面与线性搜索相同
转换为上述算法,它是:
N-1
检查边界(每个前N-1
元素),以隔离其中一个N
范围。这与第一个N-1
元素中的线性搜索相同@请更新你的问题。已经快一个月了。目前的声明远没有先前未经编辑的问题那么有意义。