Asee peer logo

Simulating the Execution of Algorithms Using Students as Actors

Download Paper |


2015 ASEE Annual Conference & Exposition


Seattle, Washington

Publication Date

June 14, 2015

Start Date

June 14, 2015

End Date

June 17, 2015





Conference Session

Emerging Computing and Information Technologies II

Tagged Division

Computing & Information Technology

Tagged Topic


Page Count


Page Numbers

26.1373.1 - 26.1373.8



Permanent URL

Download Count


Request a correction

Paper Authors


Arturo Camacho University of Costa Rica

visit author page

Arturo Camacho is an Associate Professor in the Department of Computer Science and Informatics at the University of Costa Rica (UCR), where he works since 2009. He has taught the courses of Data Structures and Analysis of Algorithms, Sound Processing, and Probability and Statistics. He has done research in analysis of musical and biological audio signals at the university’s Research Center on Information and Communication Technologies (CITIC). He received his Ph.D. and M.Sc. in Computer Engineering from the University of Florida in 2007 and 2003, respectively, and his B.Sc. in Computer Science and Informatics from the University of Costa Rica in 2001. He also studied Music at National University of Costa Rica from 1992 to 1995 and worked as a keyboardist in Latin-music bands from 1989 to 1999.

visit author page

Download Paper |


Simulating the execution of algorithms using students as actorsPurpose and contextData structures and algorithms courses are usually taught by showing examples in the boardor trough slides. This cause little stimulation in the students, who often get bored in class.Besides, it is not uncommon that students understand the examples shown in class but areunable to generalize to new situations.MethodologyWe propose a methodology for learning algorithms, data structures, and graphs, throughsimulations using students as actors. For sorting algorithms, students represent data and theyare sorted by their name. The instructor explains the basic idea behind the algorithm andasks students to perform the comparisons and movements necessary to implement the idea.For example, for insertion sort, students are told that the basic idea is to produce a sequenceof subarrays such that every time a new element is added, the subarray is guaranteed to besorted. The newly incorporated student is responsible for directing the comparisons andmovements that ensure that the subarray is sorted. This responsibility demands from thestudents a high level of concentration to achieve the goal. Typically, the students learn thealgorithm after a few steps.For trees, parent-child relations are represented by using strings that students place aroundtheir waist and give to their parent. Insertion and search operations are usually easily derivedby the students. Deletion is more complex, but after some discussion, students often find theway to produce it. Attributes like color (e.g., in red-black trees) can be represented by hats.For graphs, strings are sometimes unfeasible because the number of adjacent nodes to a nodecan be large. Hence, we use the blackboard, but students are responsible to draw the nodesand update their attributes. For example, for Dijkstra's algorithm, students create a node withtheir name and pick the adjacent nodes based on some criteria (e.g., students whose initial oftheir surname match the initial of their given name) The distance between the nodes is setaccording to another criteria (e.g., age difference in months). During execution, student areresponsible for dequeueing their node when appropriate, and updating the distances of theirneighbors to the source.ResultsAfter applying the proposed methodology, students were able to simulate in an exam theexecution of an algorithm on a data set or the execution of a set of operations of a datastructures with almost no failure. This produced a significant improvement in the averagegrade of the students.ReferencesAndrew Begel, Daniel D. Garcia, and Steven A. Wolfman. Kinesthetic learning in theclassroom. SIGCSE Bull., 36(1):183–184, March 2004.Michael Goldweber. Two kinesthetic learning activities: Turing machines and basiccomputer organization. In Proceedings of the 16th Annual Joint Conference on Innovationand Technology in Computer Science Education, ITiCSE ’11, pp. 335–335, New York, NY,USA, 2011. ACM.Paolo A. G. Sivilotti and Scott M. Pike. The suitability of kinesthetic learning activities forteaching distributed algorithms. SIGCSE Bull., 39(1):362–366, March 2007.

Camacho, A. (2015, June), Simulating the Execution of Algorithms Using Students as Actors Paper presented at 2015 ASEE Annual Conference & Exposition, Seattle, Washington. 10.18260/p.24710

ASEE holds the copyright on this document. It may be read by the public free of charge. Authors may archive their work on personal websites or in institutional repositories with the following citation: © 2015 American Society for Engineering Education. Other scholars may excerpt or quote from these materials with the same citation. When excerpting or quoting from Conference Proceedings, authors should, in addition to noting the ASEE copyright, list all the original authors and their institutions and name the host city of the conference. - Last updated April 1, 2015