小编典典

证明算法具有下界

algorithm

我正在尝试证明这个问题:

如果存在可以确定n个元素的排序列表中是否有重复元素的算法,则所需比较数的下限为n-1

我对上下限不太熟悉,我似乎对此感到困惑,有人可以帮我提供一个易于理解的证明吗?


阅读 364

收藏
2020-07-28

共1个答案

小编典典

问题陈述并不严格。应该说“ 最坏情况下 的比较次数”。

在排序数组中,n-1成对的连续元素之间存在关系,它们是<=。如果所有元素都不相同,则无法从其他比较中推断出比较结果。因此,您无法避免进行详尽的搜索并进行n-1测试。


顺便说一句,n-1在最坏的情况下也是一个上限,因为在详尽搜索之后,您总会得到答案。


最好的情况是,当前两个元素相等时,可以在完全1比较后找到答案。因此,最佳情况的下限和上限均为1

2020-07-28