Skip to main content

Constant Time Enumeration by Amortization

  • Conference paper
  • First Online:
Algorithms and Data Structures (WADS 2015)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 9214))

Included in the following conference series:

Abstract

Enumeration algorithms have been one of recent hot topics in theoretical computer science. Different from other problems, enumeration has many interesting aspects, such as the computation time can be shorter than the total output size, by sophisticated ordering of output solutions. One more example is that the recursion of the enumeration algorithm is often structured well, thus we can have good amortized analysis, and interesting algorithms for reducing the amortized complexity. However, there is a lack of deep studies from these points of views; there are only few results on the fundamentals of enumeration, such as a basic design of an algorithm that is applicable to many problems. In this paper, we address new approaches on the complexity analysis, and propose a new way of amortized analysis Push Out Amortization for enumeration algorithms, where the computation time of an iteration is amortized by using all its descendant iterations. We clarify sufficient conditions on the enumeration algorithm so that the amortized analysis works. By the amortization, we show that many elimination orderings, matchings in a graph, connected vertex induced subgraphs in a graph, and spanning trees can be enumerated in O(1) time for each solution by simple algorithms with simple proofs.

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 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight 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

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Avis, D., Fukuda, K.: Reverse Search for Enumeration. Discrete Applied Mathematics 65, 21–46 (1996)

    Article  MathSciNet  MATH  Google Scholar 

  2. Chandran, L.S., Ibarra, L., Ruskey, F., Sawada, J.: Generating and Characterizing the Perfect Elimination Orderings of a Chordal Graph. Theoretical Computer Science 307, 303–317 (2003)

    Article  MathSciNet  MATH  Google Scholar 

  3. Eppstein, D.: Finding the \(k\) smallest spanning trees. In: Gilbert, J.R., Karlsson, R. (eds.) SWAT 90. LNCS, vol. 447, pp. 38–47. Springer, Heildelberg (1990)

    Chapter  Google Scholar 

  4. Eppstein, D.: Finding the \(k\) shortest paths. In: FOCS 1994, pp. 154–165 (1994)

    Google Scholar 

  5. Ferreira, R., Grossi, R., Rizzi, R.: Output-sensitive listing of bounded-size trees in undirected graphs. In: Demetrescu, C., Halldórsson, M.M. (eds.) ESA 2011. LNCS, vol. 6942, pp. 275–286. Springer, Heidelberg (2011)

    Chapter  Google Scholar 

  6. Frequent Itemset Mining Dataset Repository. http://fimi.cs.helsinki.fi/data/

  7. Gabow, H.N., Tarjan, R.E.: A Linear-time algorithm for a special case of disjoint set union, In: STOC 1983, pp. 246–251 (1983)

    Google Scholar 

  8. Kapoor, H.N., Ramesh, H.: Algorithms for Enumerating all Spanning Trees of Undirected and Weighted Graphs. SIAM J. on Computing 24, 247–265 (1995)

    Article  MathSciNet  MATH  Google Scholar 

  9. Matsui, Y., Uehara, R., Uno, T.: Enumeration of the Perfect Sequences of a Chordal Graph. Theoretical Computer Science 411, 3635–3641 (2010)

    Article  MathSciNet  MATH  Google Scholar 

  10. Matsui, Y., Matsui, T.: Enumeration algorithm of the edge colorings in bipartite graphs. In: Deza, M., Euler, R., Manoussakis, L. (eds.) Combinatorics and Computer Science. LNCS, vol. 1120, pp. 18–26. Spinger, Heildelberg (1995)

    Chapter  Google Scholar 

  11. Rose, D.J., Tarjan, R.E., Lueker, G.S.: Algorithmic Aspects of Vertex Elimination on Graphs. SIAM J. on Computing 5, 266–283 (1976)

    Article  MathSciNet  MATH  Google Scholar 

  12. Shioura, A., Tamura, A., Uno, T.: An Optimal Algorithm for Scanning All Spanning Trees of Undirected Graphs. SIAM Journal on Computing 26, 678–692 (1997)

    Article  MathSciNet  MATH  Google Scholar 

  13. Sleator, D.D., Tarjan, R.E.: A data structure for dynamic trees. In: STOC 1981, pp. 114–122 (1981)

    Google Scholar 

  14. Uno, T.: A new approach for speeding up enumeration algorithms and its application for matroid bases. In: Asano, T., Imai, H., Lee, D.T., Nakano, S., Tokuyama, T. (eds.) COCOON 1999. LNCS, vol. 1627, p. 349. Springer, Heidelberg (1999)

    Chapter  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Takeaki Uno .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2015 Springer International Publishing Switzerland

About this paper

Cite this paper

Uno, T. (2015). Constant Time Enumeration by Amortization. In: Dehne, F., Sack, JR., Stege, U. (eds) Algorithms and Data Structures. WADS 2015. Lecture Notes in Computer Science(), vol 9214. Springer, Cham. https://doi.org/10.1007/978-3-319-21840-3_49

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-21840-3_49

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-21839-7

  • Online ISBN: 978-3-319-21840-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics