Categorizing Variations of Student-Implemented Sorting Algorithms

Ahmad Taherkhani, Ari Korhonen, Lauri Malmi

    Research output: Contribution to journalArticleScientificpeer-review

    5 Citations (Scopus)


    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 languageEnglish
    Pages (from-to)109-138
    JournalComputer Science Education
    Issue number2
    Publication statusPublished - 1 Jun 2012
    MoE publication typeA1 Journal article-refereed


    • algorithm recognition
    • classifying students' sorting implementations
    • automatic assessment tools
    • roles of variables
    • white-box testing
    • program comprehension


    Dive into the research topics of 'Categorizing Variations of Student-Implemented Sorting Algorithms'. Together they form a unique fingerprint.

    Cite this