证明算法具有下界

时间:2019-11-12 14:22:06

标签: algorithm time-complexity bounds

我正试图证明这个问题:

  

如果存在可以确定n的排序列表的算法   元素中包含重复元素,而不是比较次数   所需的下限为n-1

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

2 个答案:

答案 0 :(得分:2)

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

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


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


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

答案 1 :(得分:-1)

如果有数组vkCmdPipelineBarrier,则必须比较1和2、2和3、3和4等等,以确定其中是否有重复项。 / p>

因此,比较的总数为4,元素的总数为5,因此需要进行list = {1, 2, 3, 4, 5}比较。