Problems in comprehending recursion and suggested solutions
Abstract
Recursion is a very powerful and useful problem solving strategy. But, along with pointers and dynamic data structures, many beginning programmers consider recursion to be a difficult concept to master. This paper reports on a study of upper-division undergraduate students on their difficulty in comprehending the ideas behind recursion. Three issues emerged as the points of difficulty for the students: (1) insufficient exposure to declarative thinking in a programming context (2) inadequate appreciation of the concept of functional abstraction (3) lack of a proper methodology to express a recursive solution. The paper concludes with a discussion of our approach to teaching recursion, which addresses these issues. Classroom experience indicates this approach effectively aids students' comprehension of recursion.
Integrity signals
Registry
Cites
Statistics
Claims the paper makes
Claims other papers make about this one
Each is checked against this paper’s own text: does it say what the citing paper says it does?
The two-phase organisation of dialogues is based on the theoretical idea that recursion is a useful and powerful problem-solving strategy.
“Similarly, the organisation of the dialogues in two phases is based on the theoretical idea that recursion is a useful and powerful problem-solving strategy (Levy, 2001;Sooriamurthi, 2001).”
From Teaching argumentative synthesis writing through deliberative dialogues: instructional practices in secondary education (2021) · cites this paper as Sooriamurthi, 2001
Cites
†, F. J. M. (2017) · Lexikon des gesamten Buchwesens Online · doi:10.1163/9789004337862_lgbo_com_161117 · Cited by 1,435 · see citing works
Conceptual models and cognitive learning styles in teaching recursion
Wu, C.-C., Dale, N. B., & Bethel, L. J. (1998) · ACM SIGCSE Technical Symposium on Computer Science Education (SIGCSE) · doi:10.1145/273133.274315 · Cited by 102 · see citing works
Teaching recursion in a procedural environment—how much should we emphasize the computing model?
Ginat, D., & Shifroni, E. (1999) · doi:10.1145/299649.299718 · Cited by 55 · see citing works
Using recursion as a tool to reinforce functional abstraction (poster session)
Sooriamurthi, R. (2000) · doi:10.1145/343048.343243 · Cited by 2 · see citing works
Self-citation
Flagged first, then by citations
Cited by
Sorted by citations
Casado-Ledesma, L., Cuevas, I., Van den Bergh, H., Rijlaarsdam, G., Mateos, M., Granado-Peinado, M., & Martín, E. (2021) · Instructional Science · doi:10.1007/s11251-021-09548-3 · Cited by 29 · see citing works
- Authors
- Sooriamurthi, R.
- Affiliations
- University of West Florida (US)
- Corresponding author
- Sooriamurthi, Raja
- ORCID
- Sooriamurthi, Raja
- Venue
- ACM SIGCSE Bulletin
- Published
- 2001-06-25
- Volume
- 33
- Issue
- 3
- Pages
- 25-28
- ISSN
- 0097-8418 (ISSN-L)
- OpenAlex
- W3161385807
- Cited by
- 14
- References
- 4
- Citations by year
- 2026: 2 · 2021: 1 · 2018: 1 · 2014: 3 · 2013: 1
- FWCI
- 0.00
- Type
- journal article
- Language
- en
- Open access
- closed
- Locations
- ACM SIGCSE Bulletin (publishedVersion)
- Topics
- Physical Sciences › Computer Science › Computer Science Applications › Teaching and Learning Programming
- Physical Sciences › Computer Science › Artificial Intelligence › Logic, programming, and type systems
- Social Sciences › Education › Problem and Project Based Learning
- Keywords
- recursion, programming education, functional abstraction
About these checks
Registry, retraction, Cites and statistics results are computed, not judged, with one exception: a printed reference that no index lists is read once by a model before it counts as a citation error. Claims are extracted by a model and kept only when their quote appears verbatim in the text; each cited source is then checked, with a model’s help, for whether it says what the claim relies on. Those verdicts can be wrong — read the claim’s quote and the cited source before relying on one.
Statistics and arithmetic are recomputed, not judged.
Confidence bands are shown only for fields calibrated on our annotated test set. None is calibrated yet, so no band is shown.
What counts as a claim ›How we measure confidence ›How we check this ›
Are you an author, or do you see a problem with this page? Request a review