Elementary Data Structure
Organizing the data for processing is an essential step in the development of a computer program. For many applications, the choice of the proper data structures is the only major decision involved in the implementation: once the choice has been made, the necessary algorithms are simple. For the same data, some data structures require more or less space than others; for the same operations on the data, some data structures lead to more or less efficient algorithms than others. The choices of algorithm and of data structures are closely intertwined, and we continually seek ways to save time or space by making the choice properly.
A data structure is not a passive object: We also must consider the operations to be performed on it (and the algorithms used for these operations). This concept is formalized in the notion of a data type.
The study of storing data as variable-sized objects and in linked data structures requires and understanding of how the system manages the storage that it allocates to programs for their data.