The evolution of data structures
James K. Harris, Ardian Greca · 2005
For over 20 years, the data structures course has been a pillar of computer science programs at colleges and universities. This paper looks at how the data structures course has evolved over time from a course that emphasized algorithmic concepts to a course that emphasizes syntactical and design concepts. It illustrates how the evolution of programming languages and concepts can introduce "gratuitous" complexity into algorithms. Specific algorithms and abstract data types are compared in past and present data structures texts using a suite of software metrics. A comparison is performed between algorithms from data structures texts across different programming languages and across procedural and object oriented paradigms. The results are compared to provide evidence of how the course has evolved over time.