我正在寻找最快的算法,用于按距离将地图上的点分组为大小相等的组。这k-均值聚类算法看起来简单且有前途,但不能产生同等规模的群体。
该算法是否有一种变体,或者是否有一种不同的算法可以允许所有集群的成员数量相等?
也可以看看:将 n 个点分组到 k 个大小相等的簇中
这可能会解决问题:应用劳埃德算法 to get k质心。按数组中相关簇的大小降序对质心进行排序。为了i= 1 至k-1,将数据点推送到簇中i到任何其他质心的距离最小j (i < j ≤ k) 前往j并重新计算质心i(但不要重新计算簇)直到簇大小达到n / k.
此后处理步骤的复杂度为 O(k² n lg n).
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)