Skip to main content

Part of the book series: Lecture Notes in Computer Science ((LNISA,volume 8001))

  • 590 Accesses

Abstract

We give four elementary examples of recursion that are real-life, non-trivial, more natural than the corresponding iterative approach, and do not involve any sophisticated algorithms, data structures, or mathematical problems. The examples are two forms of writing numbers in words, coalescing page references for an index, and finding unclosed begin blocks.

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. Ackermann, W.: Zum hilbertschen aufbau der reellen zahlen. Mathematische Annalen 99, 118–133 (1928)

    Article  MathSciNet  MATH  Google Scholar 

  2. Wichmann, B.A.: Ackermann’s function in ada. Ada Lett. VI, 65–70 (1986)

    Google Scholar 

  3. Knuth, D.E.: Textbook examples of recursion. In: Artificial Intelligence and Mathematical Theory of Computation: Papers in Honor of John McCarthy, pp. 207–229. Academic Press Professional, Inc., San Diego (1991)

    Chapter  Google Scholar 

  4. Manna, Z.: Mathematical Theory of Computation. McGraw-Hill, New York (1974)

    MATH  Google Scholar 

  5. Takeuchi, I.: On a recursive function that does almost recursion only. Technical report, Musahino Electrical Communication Laboratory, Nippon Telephone and Telegraph Company, Tokyo, Japan (1978)

    Google Scholar 

  6. Knuth, D.E.: The Art of Computer Programming, Volume 1: Fundamental Algorithms, 3rd edn. Addison Wesley Longman Publishing Co., Inc., Redwood City (1997)

    MATH  Google Scholar 

  7. Tarjan, R.E.: Depth-first search and linear graph algorithms. SIAM Journal on Computing 1(2), 146–160 (1972)

    Article  MathSciNet  MATH  Google Scholar 

  8. Aho, A.V., Sethi, R., Ullman, J.D.: Compilers—Principles, Techniques, and Tools. Addison-Wesley Publishing Co., Inc., Reading (1986)

    MATH  Google Scholar 

  9. Conway, J.H., Guy, R.: The Book of Numbers. Springer, New York (1996)

    Book  MATH  Google Scholar 

  10. Knuth, D.E., Miller, A.A.: A programming and problem-solving seminar. Technical Report STAN-CS-81-863, Department of Computer Science, Stanford University, Stanford, CA, USA (1981)

    Google Scholar 

  11. Davis, P.J.: The Lore of Large Numbers. Yale University Press, New Haven (1961)

    Google Scholar 

  12. Gove, P.B.: Webster’s Third New International Dictionary of the English Language. G. & C. Merriam Co., Springfield (1961)

    Google Scholar 

  13. Knuth, D.E.: Supernatural numbers. In: Klarner, D.A. (ed.) The Mathematical Gardner, pp. 310–325. Wadsworth, Boston (1981)

    Chapter  Google Scholar 

  14. Reingold, E.M.: Writing numbers in words in TeX. TUGboat 28(2), 256–259 (2007)

    Google Scholar 

  15. Stallman, R.: GNU Emacs Manual, 16th edn. Free Software Foundation, Boston (2007)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2014 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Reingold, E.M. (2014). Four Apt Elementary Examples of Recursion. In: Dershowitz, N., Nissan, E. (eds) Language, Culture, Computation. Computing - Theory and Technology. Lecture Notes in Computer Science, vol 8001. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-45321-2_11

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-45321-2_11

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-45320-5

  • Online ISBN: 978-3-642-45321-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics