Data structures

Home > Computer Science > Software Engineering > Data structures

The organization and management of data in a program, such as arrays, lists, trees, and graphs.

Arrays: A collection of similar elements arranged in a contiguous manner that represents a single unit of storage.
Linked Lists: A data structure consisting of nodes that store data and a pointer to the next node.
Stacks: A data structure where elements are added and removed from the same end, known as the top.
Queues: A data structure where elements are added at the rear and removed from the front.
Trees: A data structure composed of nodes that represent a hierarchy of objects.
Graphs: A non-linear data structure that represents relationships and connections between objects.
Hash Tables: A data structure that stores data as key-value pairs and uses a hash function to map them to a specific index.
Algorithms: A set of instructions designed to solve a specific problem.
Sorting: It is the process of arranging elements in a specific order, i.e. ascending, descending, or based on custom orders.
Searching: A technique used to find a specific element or value from a given set of data.
Time and Space Complexity: A measure of the time and memory required to execute an algorithm or a data structure.
Recursion: A technique that allows a function to call itself repeatedly until a certain condition is met.
Dynamic Programming: A technique that uses overlapping subproblems to solve complex problems more efficiently.
Object-Oriented Programming: A programming paradigm that uses classes and objects to represent and manipulate data and behavior.
Design Patterns: Reusable solutions to common programming problems that help improve code quality and maintainability.
Binary Trees: A special type of tree where each node can have at most two children.
Binary Search Trees: A binary tree where each node has a key that is greater than all the keys at its left sub-tree and smaller than all the keys in its right sub-tree.
AVL Trees: A self-balancing binary search tree where the difference between heights of the left and right sub-trees cannot be more than one.
Red-Black Trees: Another self-balancing binary search tree that satisfies its properties by manipulating its tree nodes.
Trie: A tree-like data structure that stores a set of strings and provides fast string searching and prefix matching capabilities.
Heaps: A data structure that always satisfies the heap property, i.e., either a min-heap or a max-heap.
Disjoint Set Union: A data structure that maintains a collection of disjoint sets and supports operations like union and find.
Segment Trees: A data structure used to query and update values in a contiguous sequence of elements.
Fenwick Trees: A data structure used to efficiently compute and update the prefix sum of a sequence of values.
B-Trees: A self-balancing data structure that provides fast search, insertion, and deletion operations on large amounts of data.
Arrays: A collection of elements of the same data type that are stored in contiguous memory locations.
Linked Lists: A data structure that consists of a sequence of nodes, each containing a reference to the next node.
Stacks: A collection of elements that supports two main operations: push (adds an element to the top) and pop (removes the last element).
Queues: A collection of elements that supports adding elements to one end and removing them from the other end.
Trees: A hierarchical data structure that consists of nodes connected by edges or branches.
Graphs: A data structure that consists of nodes (vertices) connected by edges, where each edge has a weight and a direction.
Hash Tables: A data structure that maps keys to values by storing them in an array using a hash function.
Heaps: A special type of binary tree that satisfies the heap property, where the parent node is always greater than or equal to its children.
Tries: A tree-like data structure where each node represents a letter of a word, with the root node representing the empty string and leaf nodes representing complete words.
Disjoint Sets: A data structure that represents a collection of disjoint sets, where each set contains a representative element.
Matrix: An n x m matrix, which is an array of elements arranged in rows and columns.
Strings: A collection of characters that form a sequence, used to represent text in any programming language.
" ... a data structure is a data organization, management, and storage format that is usually chosen for efficient access to data."
"... a collection of data values, the relationships among them, and the functions or operations that can be applied to the data."
"... it is an algebraic structure about data."
"... efficient access to data."
"A data structure is a data organization ... chosen for efficient access to data."
"A data structure ... is usually chosen for efficient access to data."
"A data structure is a data organization, management, and storage format..."
"... a data structure is a collection of data values, the relationships among them..."
"... the functions or operations that can be applied to the data..."
"... a data structure is a data organization, management, and storage format..."
"... a data structure is usually chosen for efficient access to data."
"... a data structure is usually chosen for efficient access to data."
"Computer science."
"A data structure is a data organization, management, and storage format that is usually chosen for efficient access to data."
(N/A - no direct quote in the given paragraph)
"... a collection of data values, the relationships among them, and the functions or operations that can be applied to the data..."
"A data structure is a data organization, management, and storage format..."
(N/A - no direct quote in the given paragraph)
"A data structure is usually chosen for efficient access to data."
(N/A - no direct quote in the given paragraph)