Introducing Students to Recursion: A Multi-facet and Multi-tool Approach

In this paper we discuss a number of results and advices coming from our observations and didactical experience gathered when teaching about recursion in different contexts and on various education level (K-12 and tertiary). Knowing the difficulty in introducing, explaining and using recursion, we d...

Full description

Saved in:
Bibliographic Details
Published inInformatics in Schools. Teaching and Learning Perspectives pp. 124 - 137
Main Authors Syslo, Maciej M., Kwiatkowska, Anna Beata
Format Book Chapter
LanguageEnglish
Published Cham Springer International Publishing 2014
SeriesLecture Notes in Computer Science
Subjects
Online AccessGet full text
ISBN3319099574
9783319099576
ISSN0302-9743
1611-3349
DOI10.1007/978-3-319-09958-3_12

Cover

More Information
Summary:In this paper we discuss a number of results and advices coming from our observations and didactical experience gathered when teaching about recursion in different contexts and on various education level (K-12 and tertiary). Knowing the difficulty in introducing, explaining and using recursion, we differentiate our approach, tools, and methods. Recursion can be introduced as a ‘real-life topic’ – see Section 2, and then software for visualization of recursive computations (Section 3) can be very helpful to overcome some difficulties by novices. Section 4 is on developing recursive thinking – we use two popular topics – generating Fibonacci number and printing digits of a number – to explain how to introduce students to different aspects of recursion. Section 5 is addressed to complexity of recursive computations – we discuss how to use recursion in a most effective way. We do not teach recursion as a separate topic or subject, it is rather a method and a tool, the way of thinking, used in various situations. It is redundant in some cases (Section 5.1), can be used as an approach alternative to iteration (Sections 2 and 4.2), but our main focus is on its properties as a concept which has a computational power in designing solutions of problems and running such solutions on a computer.
ISBN:3319099574
9783319099576
ISSN:0302-9743
1611-3349
DOI:10.1007/978-3-319-09958-3_12