🛎Linked List: A linear data structure where elements are stored in nodes, each containing a reference (or link) to the next node in the sequence. It allows for efficient insertion and deletion operations.
🛎Stack: A linear data structure that follows the Last In First Out (LIFO) principle. Elements can be added or removed only from the top of the stack. It is commonly used for function calls, backtracking algorithms, and expression evaluation.
🛎Queue: A linear data structure that follows the First In First Out (FIFO) principle. Elements are added at the back and removed from the front. Queues are used in scheduling and managing tasks in concurrent processing.
🛎Heap: A specialized tree-based data structure that satisfies the heap property. In a max heap, for example, the value of each node is greater than or equal to the values of its children. Heaps are often used to implement priority queues.
🛎Tree: A hierarchical data structure consisting of nodes, with a single root node and zero or more child nodes. Trees are used in various applications, including representing hierarchical data and enabling efficient searching and sorting.
🛎Suffix Tree: A compressed trie that represents all suffixes of a given string. It allows for fast substring searches and is useful in applications like bioinformatics and text processing.
Get Sina Riyahi’s stories in your inbox
Join Medium for free to get updates from this writer.
🛎Graph: A collection of nodes (vertices) connected by edges. Graphs can be directed or undirected, weighted or unweighted, and are used to model relationships and networks, such as social networks or transportation systems.
🛎R-Tree: A tree data structure used for indexing multi-dimensional information, such as geographical coordinates. It is commonly used in spatial databases and for querying spatial data efficiently.
🛎Vertex Buffer: A memory buffer that stores vertex data for rendering graphics in computer graphics applications. It is used in conjunction with GPU rendering to efficiently handle and draw 3D models.
🛎Skiplist: A probabilistic data structure that allows for fast search, insertion, and deletion operations. It consists of multiple layers of linked lists, where each layer acts as an express lane for the layer below.
🛎Hash Index: A data structure that uses a hash function to map keys to values, allowing for fast data retrieval. Hash indices are commonly used in databases for quick lookups.
🛎SSTable (Sorted String Table): A persistent data structure used for storing key-value pairs in sorted order. It is commonly employed in databases and key-value stores, allowing efficient range queries.
💡These data structures are foundational concepts in computer science and are essential for efficient algorithm design and problem-solving across various domains.