我正在从 MySQL 表中获取 (x,y)
坐标值。假设有 50 个这样的点。
我想对这些点应用最近邻域算法以获得所有点中最中心/最密集的点。
- 使用欧氏距离公式
sqrt[(x2-x1)^2 - (y2 - y1)^2]
为每个点找到最近的邻居
- 作为最近邻出现次数最多的点应标记为密集/中心点
我有两个选择。
- 将坐标值发送到执行上述任务并返回结果值的 c++ 编译可执行服务器进程
- 在php脚本本身执行上述处理得到结果
谁能告诉我哪个更快更合适?
最佳答案
众所周知,PHP 比 C++ 慢。但对于少量计算来说,这真的无关紧要。在您的情况下,算法具有复杂性 O(n^2)
。对于大约 50 分(如问题中所述),不建议将 C++ 用于此目的,因为与您获得的 yield 相比,制作系统所产生的开销更多。
如果你有大量的计算要完成,你可以选择 C++。
看看this , 它可能对您有所帮助。
关于php - 算法实现对比c++和php,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21846723/