Linear time algorithms for two disjoint paths problems on directed acyclic graphs

  • Authors:
  • Torsten Tholey

  • Affiliations:
  • -

  • Venue:
  • Theoretical Computer Science
  • Year:
  • 2012

Quantified Score

Hi-index 5.23

Visualization

Abstract

We present an algorithm that, given two vertices s"1 and s"2 of a directed acyclic graph, constructs in linear time a data structure using linear space that, for each pair (u,v) of two vertices u and v, in constant time can output a tuple (s"1,t"1,s"2,t"2) with {t"1,t"2}={u,v} such that there are two disjoint paths p"1, from s"1 to t"1, and p"2, from s"2 to t"2, if such a tuple exists. The data structure is simpler than such a data structure for general directed graphs that can be obtained from results of Georgiadis and Tarjan. Disjoint can mean vertex- as well as edge-disjoint. As an application and main result we show that the data structure can be used to solve the 2-disjoint paths problem on directed acyclic graphs optimally, i.e., in linear time.