通过缩减建立的下限是否严格?

Are lower-bounds established by reductions tight?

将问题 A 简化为问题 B 意味着问题 B 至少与 A 一样难,甚至更难。

如果我可以减少对其他问题 X 的排序,我知道 X 的下限为 Omega(n log n)。 这个下限是否保证是一个严格的下限?我怀疑它不应该是这样,因为只知道 X 至少和 A 一样难——这意味着它可能更难,因此具有不同的下限。

我的意思是说因为插入排序有一个最坏情况下的 O(n^2) 上界是正确的,所以说它有一个最坏情况也是正确的 运行 O(n^3) 的时间。这是正确的,但没有太大的实用价值——因为我们 99% 的时间都对紧界感兴趣。

你说得很对,绑定不需要太紧。

例如,考虑一个简单的例子:在 n 个整数数组中找到最小的整数。有一个O(1) space 和O(n) 的时间算法每次都能解决这个问题。然而,这个问题通过减少 O(1) 两种方式减少到排序整数数组的问题:

  1. MININT输入转换为SORTINT输入:将MININT的输入直接用于SORTINT
  2. SORTINT输出转换为MININT输出:return排序数组的第一个元素(假设元素按升序排序)。

在最坏情况下,排序确实有一个 Omega(n) 的下界。这不是一个严格的界限; SORTINT 的 Omega(n lg n) 更紧。但是 MININT 减少到 SORTINT 本身并没有告诉我们这一点。