Skip to main content

Permutation Enumeration

  • Reference work entry
  • First Online:
Encyclopedia of Algorithms
  • 211 Accesses

Years and Authors of Summarized Original Work

  • 1962; Trotter

  • 1963; Johnson

  • 1977; Sedgewick

  • 2008; Sekine, Yamanaka, Nakano

Problem Definition

Permutation Enumeration

Let S n be the set of permutations of [n] = { 1, 2, …, n}. We write a permutation as a sequence of elements in [n] such that each element appears exactly once. A permutation enumeration is to list all permutations in S n . For example, there are 24 permutations of [4]: 1234, 1243, 1324, 1342, 1423, 1432, 2134, 2143, 2314, 2341, 2413, 2431, 3124, 3142, 3214, 3241, 3412, 3421, 4123, 4132, 4213, 4231, 4312, 4321. The enumeration of permutations is a basic and long-standing enumeration problem, and it was surveyed by Sedgewick [8].

Note that the above example lists all the permutations of [4], and we have listed them in lexicographic order, which is the most natural way to enumerate them. The purpose of this paper is to introduce representative methods for enumeration problems by showing how these methods are applied to...

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 1,599.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Hardcover Book
USD 1,999.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Recommended Reading

  1. Arimura H, Uno T (2007) An efficient polynomial space and polynomial delay algorithm for enumeration of maximal motifs in a sequence. J Comb Optim 13:243–262

    Article  MathSciNet  MATH  Google Scholar 

  2. Avis D, Fukuda K (1996) Reverse search for enumeration. Discret Appl Math 65(1–3):21–46

    Article  MathSciNet  MATH  Google Scholar 

  3. Goldberg L (1992) Efficient algorithm for listing unlabeled graphs. J Algorithms 13:128–143

    Article  MathSciNet  MATH  Google Scholar 

  4. Goldberg L (1993) Polynomial space polynomial delay algorithms for listing families of graphs. In: Proceedings of the 25th annual ACM symposium on theory of computing, San Diego, pp 218–225

    Google Scholar 

  5. Johnson S (1963) Generation of permutations by adjacent transposition. Math Comput 17:282–285

    Article  MathSciNet  MATH  Google Scholar 

  6. Nakano S, Uno T (2004) Constant time generation of trees with specified diameter. In: Proceedings of the 30th workshop on graph-theoretic concepts in computer science (WG 2004), Bad Honnef. LNCS, vol 3353, pp 33–45

    Google Scholar 

  7. Savage C (1997) A survey of combinatorial gray codes. SIAM Rev 39(4):605–629

    Article  MathSciNet  MATH  Google Scholar 

  8. Sedgewick R (1977) Permutation generation methods. Comput Surv 9(2):137–164

    Article  MathSciNet  MATH  Google Scholar 

  9. Sekine K, Yamanaka K, Nakano S (2008) Enumeration of permutations. IEICE Trans Fundam Electron Commun Comput Sci J91-A(5):543–549 (in Japanese)

    Google Scholar 

  10. Steinhaus H (1964) One hundred problems in elementary mathematics. Basic Books, New York

    MATH  Google Scholar 

  11. Trotter H (1962) Perm (algorithm 115). Commun ACM 5(8):434–435

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Katsuhisa Yamanaka .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2016 Springer Science+Business Media New York

About this entry

Cite this entry

Yamanaka, K. (2016). Permutation Enumeration. In: Kao, MY. (eds) Encyclopedia of Algorithms. Springer, New York, NY. https://doi.org/10.1007/978-1-4939-2864-4_735

Download citation

Publish with us

Policies and ethics