线段或边缘相交查找算法的时间复杂度

3

我简要回顾了计算几何中线段交和线段排列问题的文献。它们大多基于平面扫描算法。从计算复杂度的角度来看,渐近算法边界似乎是线段数和“k”的函数,“k”是边缘交点的数量。例如,其中一个最为知名的算法时间复杂度为O(nlogn + “k”),这是输出敏感的。我的问题是难以理解为什么我们不能在提供时间复杂度时摆脱“k”这个术语。因为如果我们看一下其他算法,比如排序问题的算法,复杂度并不是交换或比较的次数的函数,而只是输入数量的函数。任何见解都将有所帮助。

1个回答

1
如果您希望严格按照输入中线段数量表达最坏情况下的复杂度,那么您需要假设K为最大可能的交点数(即N2)。因此,具有O(N log N + K)时间复杂度(如Balaban算法)的算法也可以称为O(N2 + N log N)或O(N *(N + log N)),如果您愿意的话。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接