The Evolution of Data Structures

Kruse, R., H., Data Structures and Program Design in C++ , 1 st edition, 1998. [9] McCabe, T., J., Complexity Measure , IEEE Transctions on Software Engineering, , pp 308-320, December … Education Conference S3H-9 The Evolution of Data Structures James Harris 1 and Ardian Greca 2 Georgia Southern University, Department of Computer Science P.O. Box 7997, Statesboro, GA 30460 1 James Harris, Associate Professor of …
The data structures course has been a core constituent for many years in computer science programs. While spanning many languages, from FORTRAN to Pascal to C to C++ and now Java, the basic content of the course has remained unchanged. As languages have evolved, there has been a perceived increased in the syntactic complexity of data structures to become obscured. Many object oriented features seem to add to the syntactic complexity without contributing to the functionality of an algorithm. Students are required to learn more complex language syntax and very often the underlying algorithm is lost in the confusion. The term “gratuitous complexity” was first described in [1] as complexity that “contributes nothing to the task in hand”. For example, in the book “Data Structures and Algorithm Analysis in C++” by Mark Allen Weiss[11], Weiss defines a Node for a linked list in C++ as:Â template <class Object> class ListNode { ListNode( const Object & theElement = Object( ), ListNode * n = NULL ) : element( theElement ), next( n ) { } Object element;….. In this small segment of C++ code, there are classes, objects, templates, constructors, default arguments that are used in calls to other data member’s constructors and friend class declarations which are passed the underlying template type of the ListNode class. Couldn’t the functionality be expressed in a way that does not obscure the underlying process? In an earlier book by Weiss, “Data Structures and Algorithm Analysis” [10], a node for a linked list is defined in the “C” language….
Download The Evolution of Data Structures.Pdf