Abstract data structure
|
In theoretical computer science, an abstract data structure is an abstract storage for data defined in terms of the set of operations to be performed on data and computational complexity for performing these operations, regardless the implementation in a concrete data structure.
Selection of an abstract data structure is crucial in design of efficient algorithms and in estimating their computational complexity, while selection of concrete data structures is important for efficient implementation of algorithms.
This notion is very close to that of Abstract data type (ADT), used in theory of programming languages. A close notion of data model additionally considers the pattern of interrelations between data elements (structure of the data structure, however awkward that may sound).
The names of many abstract data structures (and abstract data types) match the names of concrete data structures.