Algorithm 可以使用什么算法快速聚类多段线形状中的点?
假设我们有一条由像这样的两点组成的线 在给定活动点输入的情况下,哪种算法可以最有效地计算该行中的簇 红色是所有的点。 黄色-给定时间内的活动点Algorithm 可以使用什么算法快速聚类多段线形状中的点?,algorithm,cluster-analysis,Algorithm,Cluster Analysis,假设我们有一条由像这样的两点组成的线 在给定活动点输入的情况下,哪种算法可以最有效地计算该行中的簇 红色是所有的点。 黄色-给定时间内的活动点 在此示例中,算法应找到两个簇(蓝色)。您可以执行以下操作: 按索引对点进行聚类。这可以在线性时间内完成。在此过程中保存群集的边界框 对于每对簇 检查边界框是否相交或具有最大距离t 如果是,请检查两个簇中是否有两个最大距离为t的点 如果是,则合并集群 t是距离阈值。它可以是静态的,也可以基于群集(例如,到任何群集点最近邻居的最大距离) 该算法仍然具有
在此示例中,算法应找到两个簇(蓝色)。您可以执行以下操作:
- 检查边界框是否相交或具有最大距离t
- 如果是,请检查两个簇中是否有两个最大距离为t的点
- 如果是,则合并集群
该算法仍然具有二次时间复杂度,但由于预聚类和边界盒测试,它应该足够快。删除非活动点,使用常规聚类算法。它将是O(n^2),其中n是活动点的数量,对吗?因为我需要计算每对点的距离。