A-level Computing/AQA/Paper 1/Fundamentals of data structures/Data structures

A data structure is the general term used for organised collections of data. Data structures contrast with atomic (or "primitive") data that represents only as single value.

Everyday examples of data structures are lists of items (such as shopping lists or to-do lists), a pile of marking, or a friend's contact details (name, address, phone number, email, etc.). Data structures may contain other data structures: for example, a to-do list may be a data structure that is a list of items, while each to-do item is itself a structure of task title, notes, due date, and so on.

Data structures are useful in programming as they can bundle related data items together, so they can be stored and manipulated together. Programs can operate on the data structure as a whole (such as copying a list from one place to another) as well as operating on elements within the structure.

Data structures also differ on the operations they support and make easy. When designing programs, it is often better to start by choosing and designing the appropriate data structures to store the data required for the program; the algorithms that manipulate those data structures are often obvious and largely dictated by the data structures.

Key Data Structures
Although this will be covered in greater detail later, here are the key data types you should be aware of. Keep in mind that arrays are also an important data structure but will not actually be examined. They are like a list but have a set number of spaces for data to be stored in. Python does not incorporate this data structure but other well-known programming languages do such as Java.
 * Queues
 * Lists
 * Stacks
 * Hash Tables
 * Dictionaries
 * Graphs
 * Trees
 * Vectors