IN this chapter we introduce the central concept that we use in the analysis of algorithms and data structures: generating functions. This mathematical material is so fundamental to the rest of the book that we shall concentrate on presenting a synopsis somewhat apart from applications, though we do draw some examples from properties of algorithms.

After defining the basic notions of “ordinary” generating functions and “exponential” generating functions, we begin with a description of the use of generating functions to solve recurrence relations, including a discussion of necessary mathematical tools. For both ordinary and exponential generating functions, we survey many elementary functions that arise in practice, ...

Start Free Trial

No credit card required