Generating Linear Extensions Fast
- 1 April 1994
- journal article
- Published by Society for Industrial & Applied Mathematics (SIAM) in SIAM Journal on Computing
- Vol. 23 (2) , 373-386
- https://doi.org/10.1137/s0097539791202647
Abstract
One of the most important sets associated with a poset ${\cal P}$ is its set of linear extensions, $E({\cal P})$. This paper presents an algorithm to generate all of the linear extensions of a poset in constant amortized time, that is, in time $O(e(\cP))$, where $e(\cP) = |E(\cP)|$. The fastest previously known algorithm for generating the linear extensions of a poset runs in time $O(n \! \cdot \! e(\cP))$, where $n$ is the number of elements of the poset. The algorithm presented here is the first constant amortized time algorithm for generating a "naturally defined" class of combinatorial objects for which the corresponding counting problem is #P-complete. Furthermore, it is shown that linear extensions can be generated in constant amortized time where each extension differs from its predecessor by one or two adjacent transpositions. The algorithm is practical and can be modified to count linear extensions efficiently and to compute $P (x
Keywords
This publication has 20 references indexed in Scilit:
- Counting linear extensionsOrder, 1991
- The Calculation of Invariants for Ordered SetsPublished by Springer Nature ,1989
- On generating all maximal independent setsInformation Processing Letters, 1988
- Gray codes with restricted densityDiscrete Mathematics, 1984
- Some Hamilton Paths and a Minimal Change AlgorithmJournal of the ACM, 1984
- On the generation of all topological sortingsJournal of Algorithms, 1983
- Combinatorial TheoryPublished by Springer Nature ,1979
- A structured program to generate all topological sorting arrangementsInformation Processing Letters, 1974
- The square of every two-connected graph is HamiltonianJournal of Combinatorial Theory, Series B, 1974
- Generation of permutations by adjacent transpositionMathematics of Computation, 1963