首页> 外文期刊>ACM Transactions on Parallel Computing >Near Optimal Parallel Algorithms for Dynamic DFS in Undirected Graphs
【24h】

Near Optimal Parallel Algorithms for Dynamic DFS in Undirected Graphs

机译:无向图中动态DFS的近似最佳并行算法

获取原文
获取原文并翻译 | 示例

摘要

Depth first search (DFS) tree is a fundamental data structure for solving various graph problems. The classical algorithm [54] for building a DFS tree requires O(m + n) time for a given undirected graph G having n vertices and m edges. Recently, Baswana et al. [5] presented a simple algorithm for updating the DFS tree of an undirected graph after an edge/vertex update in O(n)1 time. However, their algorithm is strictly sequential. We present an algorithm achieving similar bounds that can be easily adopted to the parallel environment. In the parallel environment, a DFS tree can be computed from scratch in expected O(1) time [2] on an EREW PRAM, whereas the best deterministic algorithm takes O(n~(1/2)) time [2, 27] on a CRCW PRAM. Our algorithm can be used to develop optimal time (to poly log n factors) deterministic parallel algorithms for maintaining fully dynamic DFS and fault tolerant DFS of an undirected graph. (1) Parallel Fully Dynamic DFS: Given an arbitrary online sequence of vertex or edge updates, we can maintain a DFS tree of an undirected graph in O(1) time per update using m processors on an EREW PRAM. (2) Parallel Fault tolerant DFS: An undirected graph can be preprocessed to build a data structure of size 0(m), such that for any set of k updates (where k is constant) in the graph, a DFS tree of the updated graph can be computed in O(1) time using n processors on an EREW PRAM. For constant k, this is also work optimal (to poly log n factors). Moreover, our fully dynamic DFS algorithm provides, in a seamless manner, nearly optimal (to poly log n factors) algorithms for maintaining a DFS tree in the semi-streaming environment and a restricted distributed model. These are the first parallel, semi-streaming, and distributed algorithms for maintaining a DFS tree in the dynamic setting.
机译:深度优先搜索(DFS)树是用于解决各种图形问题的基本数据结构。对于具有n个顶点和m个边的给定无向图G,用于构建DFS树的经典算法[54]需要O(m + n)时间。最近,Baswana等。文献[5]提出了一种简单的算法,用于在O(n)1次边缘/顶点更新后更新无向图的DFS树。但是,他们的算法严格是顺序的。我们提出了一种实现相似界限的算法,可以轻松地将其应用于并行环境。在并行环境中,可以从EREW PRAM上的预期O(1)时间[2]中从头开始计算DFS树,而最佳确定性算法则需要O(n〜(1/2))时间[2,27]在CRCW PRAM上。我们的算法可用于开发最佳时间(至多对数n因子)确定性并行算法,以维护无向图的完全动态DFS和容错DFS。 (1)并行全动态DFS:给定任意在线顶点或边缘更新序列,我们可以使用EREW PRAM上的m个处理器,在每次更新的O(1)时间中维护无向图的DFS树。 (2)并行容错DFS:可以对无向图进行预处理,以构建大小为0(m)的数据结构,这样,对于图中的k组任何更新(其中k为常数),DFS树都将更新可以使用EREW PRAM上的n个处理器以O(1)时间计算图形。对于常数k,这也是最佳的(对于多对数n因子)。此外,我们的全动态DFS算法以一种无缝的方式提供了近乎最优的(针对多对数n因子)算法,用于在半流环境和受限的分布式模型中维护DFS树。这些是用于在动态设置中维护DFS树的第一个并行,半流和分布式算法。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号