DAG具有O(n log n)空间和O(log n)时间查询的可达性?


17

对于有向无环图,是否存在一种无需进行二次空间或线性时间即可进行可达性查询的数据结构?理想情况下,我寻求一种仅使用每个顶点的O(log n)空间和对数时间的算法VË,其中。ñ=|V|+|Ë|

在我看来,基于标准排序算法的某种概括,应该存在这样的数据结构,这在直觉上似乎很明显。但令我惊讶的是我找不到任何东西。我遇到的所有事情都是关于图形的假设(例如,平面度),或者解决了二次时间/空间中的难题(例如,查询与图形修改交错)。

上可达维基百科页面只包括一个通用算法(弗洛伊德-沃肖尔); 该页面的其余部分处理涉及假设的特殊情况,例如图形是平面的(不是)。

在这个空间中最常被引用的论文似乎是路径检索数据结构的摊销效率,但是为了允许这种情况以及它引用的所有论文都涉及O(n ^ 2)空间或O(n ^ 2)时间。更新与查询交错的图形(即不进行预处理)。

这个问题没有得到回答,但是它解决了更困难的问题,即允许边缘插入与查询交错。

这个问题要求一个持久的(纯功能的)数据结构,这里不需要。“简洁的Posets”论文需要空间,但它可以实现查询。我寻求一种时间更糟,空间更好的算法。Øñ2Ø1个

通常在这里寻找立足点。如果有一份关于图可达性的调查论文没有将其99%的时间花费在平面图的案例上,那将会有所帮助。



感谢您的链接RB。该问题和第一个答案不涉及空间(除了简短提及二次空间界限,这是该问题寻求改进的内容)。第二个答案暗示距离查询(即整数值或实值)的否定结果,而不是可达性(即{0,1}值),这是一个较容易解决的问题。不过谢谢!
user4718 2014年

快捷路由或克里斯蒂安·索默(Christian Sommer)在相关问题上提到的参考文献在实践中可能有用。您在寻找实用的方法还是理论上的下限?
安德拉斯·萨拉蒙

6
ñ2üv

Answers:


3

请参阅“时间间隔标签”和“ 2-跳标签”,它们在时间和空间上实际上都非常有效,并且可以为您提供所需的信息。通常,针对DAG有很多“可达性索引”方案。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.