我需要一个函数(在任何语言中,但最好是一个脚本),它可以获取具有纬度/经度坐标的对象数组(比如说zipcodes),并返回原始数组的所有元素都在x内的最小子集(比如说)20英里至少有一个子集的成员。
答案 0 :(得分:1)
这是一个让你入门的贪婪算法。
- 以空结果集 R 开头,让 S 成为所有zipcodes的集合。
- 对于 S 中的每个邮政编码 Zn ,计算 Zn Vn >
- 找到包含最多元素的 Vmax 集合 - 将相应的邮政编码 Zmax 添加到结果集 R 中,并删除所有元素来自 S 的 Vmax 。
- 使用 S 中的其余元素,从步骤2开始重复,直到 S 为空。然后最后一组是 R 。
醇>