我想我懂了。
x
坐标最小的顶点。如果有多个,则选择 y
坐标最小的顶点。这个过程的时间复杂度是 O(n)
。O(s)
,其中 s
是与起始顶点相连的线段数。O(n i/2)
,其中 i
是每个顶点相连的平均线段数。这个算法的最坏时间复杂度为 O(n i/2)
,其中 n
是顶点数,i
是每个顶点连接的平均线段数。当多边形不相交时,最佳情况的复杂度为 O(n)
。在我的案例中,多边形很少相交,因此这个过程接近于 O(n)
。
让我想一种不是n^2的方法,因为你要比较n个点和n个线段。
D->B
,B->E
... 一些顶点有多个入射线段(D&F->B
),一些顶点有多个出射线段(B->C&E
)。 - Reblochon Masque