skip to main content
10.1145/544414.544441acmconferencesArticle/Chapter ViewAbstractPublication PagesiticseConference Proceedingsconference-collections
Article

The case of base cases: why are they so difficult to recognize? student difficulties with recursion

Published:24 June 2002Publication History

ABSTRACT

Recursion is a central concept in computer science, yet it is a very difficult concept for beginners to learn. In this paper we focus on a specific aspect of comprehending recursion - the conception of the base case as an integral component of a recursive algorithm. We found that students have difficulties in identifying base cases: they handle redundant base cases; ignore boundary values and degenerated cases; avoid out-of-range values; and may even not define any base cases when formulating recursive algorithms. We also found that students have difficulties in evaluating recursive algorithms that deal with imperceptible base cases. We suggest that teachers should make a special effort to discuss different aspects of the base case concept. Emphasis should be put on both declarative and procedural aspects of categorizing and handling base cases as part of recursion formulation.

References

  1. Anderson, J.R., Prirolli, P., and Farrell, R. Learning to program recursive functions. In The Nature of Expertise. Chi, M.T., Glaser, R., and Farr, M.J. (eds.). Hillsdale, NJ: Lawrence Erlbaum Associates, 1988, 151--183.Google ScholarGoogle Scholar
  2. Ben-Ari, M. Recursion: From drama to program. Journal of Computer Science Education. 11(3), 1997, 9--12.Google ScholarGoogle Scholar
  3. George, E.C. Experience with novices: The importance of graphical representations in supporting mental models. In Blackwell, A.F. and Bilotta, E. (Eds). Proceedings of the 12th Workshop of the Psychology of Programming Interest Group, 2000, 33--44.Google ScholarGoogle Scholar
  4. Ginat, D. and Shifroni, E. Teaching recursion in a procedural environment - How much should we emphasize the computing model? Proceedings of the 30th SIGCSE technical symposium on computer science education, 1999, 127--131. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Kann, C., Lindenman, R., and Heller, R. Integrating algorithm animation into a learning environment. Computers Educ., 28 (4), 223--228, 1997. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Kahney, H. What do novice programmers know about recursion? Proceedings of the CHI '83 Conference on Human Factors in Computer Systems, 1983, 235--239. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Kahney, H. and Eisenstadt, M. Programmers' mental models of their programming tasks: The interaction of real world knowledge and programming knowledge. Proceedings of the 4th Annual Conference of the Cognitive Science Society, 1982, 143--145.Google ScholarGoogle Scholar
  8. Segal, J. Empirical studies of functional programming learners evaluating recursive functions. Instructional Science, 22, 385--411, 1995.Google ScholarGoogle ScholarCross RefCross Ref
  9. Sooriamurthi, R. Problems in comprehending recursion and suggested solutions. Proceedings of the 6th Annual SIGCSE Conference on Innovation and Technology in Computer Science Education, 2001, 25--28. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Spohrer, J.G., and Soloway, E. Analyzing the high frequency bugs in novice programs. In Empirical Studies of Programmers. Soloway E. and Iyengar, S. (eds.). Albex Publishing Corporation, Norwood, New Jersey, 1986, 230--251. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Wilcocks, D., and Sanders, I., Animating recursion as an aid to instruction. Computers Educ. 23(3), 221--226, 1994. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Wu, C.C., Dale, N.B., and Bethel, L.J. Conceptual models and cognitive learning styles in teaching recursion. Proceedings of the 29th SIGCSE technical symposium on computer science education, 1998, 292--296. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. The case of base cases: why are they so difficult to recognize? student difficulties with recursion

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in
      • Published in

        cover image ACM Conferences
        ITiCSE '02: Proceedings of the 7th annual conference on Innovation and technology in computer science education
        June 2002
        262 pages
        ISBN:1581134991
        DOI:10.1145/544414

        Copyright © 2002 ACM

        Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 24 June 2002

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • Article

        Acceptance Rates

        ITiCSE '02 Paper Acceptance Rate42of100submissions,42%Overall Acceptance Rate552of1,613submissions,34%

        Upcoming Conference

        ITiCSE 2024

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader