【问题标题】:Counter number of groups of connected line segments计算连接线段组数
【发布时间】:2017-04-17 06:04:00
【问题描述】:

我正在尝试解决以下问题:假设我们得到了一堆带有一些起点和终点坐标的线段。它们都是水平的或垂直的。我正在尝试提出一种算法来计算给定段集中的组件数量。组件是一组线段,其中每个线段与至少一个其他线段相交(或者换句话说,可以从任何线段的任何点到任何其他线段上的任何点)。有没有可能比显而易见的 O(N^2) 解决方案做得更好?

【问题讨论】:

    标签: algorithm geometry


    【解决方案1】:

    你可以使用扫线算法(1)(2)寻找交叉点。
    使用这些交叉点创建具有union-find algorithm 的段集群。

    请注意,当交叉点计数很高(大约 O(N^2))时,这种方法可能是二次方法。

    【讨论】:

    • 是的,我就是这么想的。我认为可能有更好的方法,可能没有我所看到的。谢谢:)
    猜你喜欢
    • 2016-09-05
    • 1970-01-01
    • 2013-11-26
    • 2014-10-11
    • 1970-01-01
    • 2016-02-25
    • 1970-01-01
    • 1970-01-01
    • 2013-12-05
    相关资源
    最近更新 更多