1/33
Vocabulary flashcards covering introductory concepts of data structures, algorithms, classification, linear and non-linear lists, stacks, queues, trees, graphs, and hashing based on Lecture 1.
Name | Mastery | Learn | Test | Matching | Spaced | Call with Kai | Chat |
|---|
No analytics yet
Send a link to your students to track their progress
Data Structure
A systematic way of organizing, storing, and managing data in a computer so that it can be accessed, modified, and processed efficiently.
Logical Structure
The abstract perspective of a data structure representing how data elements relate to one another (e.g., linear, tree, or graph).
Storage Structure
The physical representation of data elements in computer memory (e.g., arrays or linked blocks).
Abstract Data Type (ADT)
A mathematical model for data structures that specifies what operations can be performed (interface and contract), without defining how they are implemented.
Algorithm
A step-by-step procedure or set of instructions used to solve a problem.
Primitive Data Structure
Basic, built-in data types provided directly by a programming language that store simple, single values (such as integers, floats, characters, and pointers).
Non-Primitive Data Structure
Complex data structures built from primitive data types that store multiple values and model relationships among data.
Linear Data Structure
A data structure where elements are arranged in a sequential order, with each element (except the first and last) having a single predecessor and a single successor.
Non-Linear Data Structure
A data structure where elements are arranged hierarchically or as a network, allowing an element to connect with multiple other elements.
Array
A collection of homogeneous elements (same data type) stored in contiguous memory locations and accessed using an index.
Linked List
A dynamic data structure consisting of a collection of nodes, where each node stores data and a reference or pointer to the next node.
Singly Linked List
A type of linked list in which each node contains a pointer that references only the next node in the sequence.
Doubly Linked List
A linked list in which each node contains two pointers: one pointing to the next node and one pointing to the previous node.
Circular Linked List
A linked list variation in which the pointer of the last node points back to the first node instead of null.
Doubly Circular Linked List
A linked list variation where nodes link forward and backward, with the last node connecting back to the first node to form a complete loop.
Stack
A linear data structure that restricts insertion and removal of elements to one end called the top, following a Last In, First Out (LIFO) protocol.
PUSH
The stack operation used to insert a new element at the top of the stack.
POP
The stack operation used to remove the most recently added element from the top of the stack.
Stack Overflow
A condition that occurs when an attempt is made to PUSH an element onto a stack that is already full.
Stack Underflow
A condition that occurs when an attempt is made to POP an element from an empty stack.
Queue
A linear data structure where elements are added at the REAR end and removed from the FRONT end, following a First In, First Out (FIFO) protocol.
ENQUEUE
The queue operation used to insert an element at the REAR of the queue.
DEQUEUE
The queue operation used to remove an element from the FRONT of the queue.
Tree
A non-linear data structure consisting of a finite set of nodes organized hierarchically starting from a special root node, containing no cycles.
Root Node
The top node of a tree structure from which all hierarchical child node relationships descend.
Leaf Node
A node in a tree structure that has no child nodes.
Graph
A non-linear data structure G=(V,E) consisting of a set of vertices V (nodes) and a set of edges E representing connections between pairs of vertices.
Directed Graph (Digraph)
A graph in which all edges have a specified direction connecting one vertex to another.
Weighted Graph
A graph in which edges are assigned specific numerical values representing costs, distances, or times.
Connected Graph
A graph in which a path exists between every pair of vertices.
Hashing
A technique that converts a key into an array index using a hash function (index=h(key)) to enable direct, fast data access.
Collision (Hashing)
A condition in hashing that occurs when two distinct keys map to the exact same index location.
Chaining
A collision resolution technique in hashing where elements mapping to the same index are stored together in a linked list at that index.
Open Addressing
A collision resolution technique in hashing that searches for another available empty slot in the array when a collision occurs.