Teaching Object-Oriented Recursive Data Structures

被引:0
作者
Obando, Rodrigo A. [1 ]
机构
[1] Columbus State Univ, TSYS Sch Comp Sci, Columbus, GA 31907 USA
来源
PROCEEDINGS OF THE 2019 ANNUAL ACM SOUTHEAST CONFERENCE (ACMSE 2019) | 2019年
关键词
Object-Oriented; Recursion; Data Structures;
D O I
10.1145/3299815.3314432
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
Recursive solutions to problems are important in teaching computing concepts, particularly in data structures. We can trace linked lists to LISP where their definition is recursive in nature. As we continued to teach these concepts, implementation of such structures gave way to the idea of a node as the simplest part of a linked list. This implementation influenced the way we teach linked lists and we have normally split that into the LinkedList class and the Node class which is typically private. The first solutions the students provide to any processing of the list are typically iterative and not recursive. Even though the definition of a linked list is recursive the solutions we find are not. We present an implementation of a linked list that comes directly from the recursive definition and directs the students to recursive solutions instead of iterative ones. We also present the definition of a binary tree and follow the same principles to help the students think recursively. This approach is languageindependent although the code presented is in C#.
引用
收藏
页码:53 / 57
页数:5
相关论文
共 9 条
[1]  
Fuqua P., 2003, LIST PROCESSING ENCY
[2]  
Harris J, 2004, 34 ASEE IEEE FRONT E
[3]  
Knuth D.E., 2011, The Art of Computer Programming, Combinatorial Algorithms, V4A
[4]  
Koffman E.B., 2005, Objects, Abstraction
[5]  
Lewis J., 2011, JAVA FDN INTRO PROGR
[6]   RECURSIVE FUNCTIONS OF SYMBOLIC EXPRESSIONS AND THEIR COMPUTATION BY MACHINE, .1. [J].
MCCARTHY, J .
COMMUNICATIONS OF THE ACM, 1960, 3 (04) :184-195
[7]  
Tremblay Jean-Paul., 1984, An Introduction to Data Structures with Applications, V2Nd
[8]  
Wegner P., 2003, DATA STRUCTURES ENCY
[9]  
[No title captured]