Abstract
In this study, we examined freshmen students' sorting algorithm
implementations in data structures and algorithms' course in two phases:
at the beginning of the course before the students received any
instruction on sorting algorithms, and after taking a lecture on sorting
algorithms. The analysis revealed that many students have insufficient
understanding of implementing sorting algorithms. For example, they
include unnecessary swaps in their Insertion or Selection sort
implementations resulting in more complicated and inefficient code.
Based on the data, we present a categorization of these types of
variations and discuss the implications of the results. In addition, we
introduce an instrument to recognize these algorithms automatically.
This is done in terms of white-box testing. Our aim is to develop an
automatic assessment system to help teachers in the burden of marking
students' assignments and give feedback to the students on their
algorithmic solutions. We outline how the presented results can be used
to develop the instrument further.
Original language | English |
---|---|
Pages (from-to) | 109-138 |
Journal | Computer Science Education |
Volume | 22 |
Issue number | 2 |
DOIs | |
Publication status | Published - 1 Jun 2012 |
MoE publication type | A1 Journal article-refereed |
Keywords
- algorithm recognition
- classifying students' sorting implementations
- automatic assessment tools
- roles of variables
- white-box testing
- program comprehension