破囧3请自重。。
这种每个点都对比的算法效率也太低了。。
要是1W个点 程序直接爆掉
正解应该是O(nlogn)的分治
每次求解的时候 分成左右两个区域 分别递归计算最近点对
然后合并的时候只要取左右最小点对和中间的8对点就够了
分治复杂度O(nlogn) 合并复杂度O(n)
因此总复杂度O(nlogn) 远低于您的O(n^2)
piapiapiapiapia~~!
这种每个点都对比的算法效率也太低了。。
要是1W个点 程序直接爆掉
正解应该是O(nlogn)的分治
每次求解的时候 分成左右两个区域 分别递归计算最近点对
然后合并的时候只要取左右最小点对和中间的8对点就够了
分治复杂度O(nlogn) 合并复杂度O(n)
因此总复杂度O(nlogn) 远低于您的O(n^2)
piapiapiapiapia~~!