Finding long simple paths in a weighted digraph using pseudo-topological orderings

Miguel Raggi

Given a weighted digraph D, finding the longest simple path is well known to be NP-hard. Furthermore, even giving an approximation algorithm is known to be NP-hard. In this paper we describe an efficient heuristic algorithm for finding long simple paths, using an hybrid approach of DFS and pseudo-topological orders, a a generalization of topological orders to non acyclic graphs, via a process we call "opening edges". An implementation of this algorithm won the Oracle MDC 2015 coding competition.

Knowledge Graph



Sign up or login to leave a comment