Academia.eduAcademia.edu

BTRecurTutor: a tutorial for practicing recursion in binary trees

Computer Science Education

Abstract

Background and Context: Recursion in binary trees has proven to be a hard topic. There was not much research on enhancing student understanding of this topic. Objective: We present a tutorial to enhance learning through practice of recursive operations in binary trees, as it is typically taught post-CS2. Method: We identified the misconceptions students have in recursive operations on binary trees. We designed a code writing exam question to measure those misconceptions. We built a tutorial that trains students on avoiding those misconceptions through the use of a semantic code analyzer that detects misconceptions and provides appropriate feedback. Findings: Our results show an improvement in student performance when using the tutorial along with the practice exercises, and even more improvement when the same exercises are used with a semantic code analyzer. Implications: The best way to use our tutorial to enhance student performance on advanced recursion is to allow students solving the tutorial exercises with the the semantic feedback.