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.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Avis, D., Fukuda, K.: Reverse Search for Enumeration. Discrete Applied Mathematics 65, 21–46 (1996)
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)
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)
Eppstein, D.: Finding the \(k\) shortest paths. In: FOCS 1994, pp. 154–165 (1994)
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)
Frequent Itemset Mining Dataset Repository. http://fimi.cs.helsinki.fi/data/
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)
Kapoor, H.N., Ramesh, H.: Algorithms for Enumerating all Spanning Trees of Undirected and Weighted Graphs. SIAM J. on Computing 24, 247–265 (1995)
Matsui, Y., Uehara, R., Uno, T.: Enumeration of the Perfect Sequences of a Chordal Graph. Theoretical Computer Science 411, 3635–3641 (2010)
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)
Rose, D.J., Tarjan, R.E., Lueker, G.S.: Algorithmic Aspects of Vertex Elimination on Graphs. SIAM J. on Computing 5, 266–283 (1976)
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)
Sleator, D.D., Tarjan, R.E.: A data structure for dynamic trees. In: STOC 1981, pp. 114–122 (1981)
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)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights 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)