algorithm - 最近的一对点蛮力;为什么是 O(n^2)?

标签 algorithm performance closest-points

我觉得问这个问题很愚蠢,但是......

对于“最近的点对”问题(不熟悉的请参见this),为什么暴力算法的最坏情况运行时间为O(n^2)?

如果说 n = 4,那么在搜索空间中只有 12 个可能的点可以比较,如果我们还考虑从任一方向比较两个点。如果我们不比较两个点两次,那么它将是 6。

O(n^2) 加起来不适合我。

最佳答案

实际比较次数为:

exact formula , 或 enter image description here .

但是,在大 O 表示法中,您只关心主导项。在非常大的值 enter image description here , enter image description here术语变得不那么重要,enter image description here 也是如此<code>n^2</code> 上的系数学期。所以,我们只是说它是<code>O(n^2)</code> .

Big-O 表示法并不是要为您提供所用时间或步数的确切公式。它只为您提供复杂度/时间的顺序,以便您了解它如何针对大量输入进行扩展。

关于algorithm - 最近的一对点蛮力;为什么是 O(n^2)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41705567/

相关文章:

algorithm - 最小操作数

c - 对多组求和

algorithm - 找到最近的汉明距离

algorithm - 高效的图片框匹配算法

android - 在 Android、资源或绘图中存储和获取图像的最佳方式是什么?

algorithm - 在 O(nlogn) 时间内从一组 n 个点中获取前 k 个最接近的点对?

python - 找到所有接近目标的值,如 numpy.searchsorted() 但返回所有相同的值?

java - 在 Java 中复制和移动文件,不同方法的解释和比较

performance - 压力测试-API网关+AWS Lambda

algorithm - 直线上给出的点的最短距离对?