imported from computersciencecafe.com
2D arrays
A data structure that stores elements in a grid-like format with rows and columns.
Stacks
A data structure that follows the Last-In-First-Out (LIFO) principle, where elements are added and removed from the same end.
Queues
A data structure that follows the First-In-First-Out (FIFO) principle, where elements are added to one end and removed from the other end.
Heaps
A tree-based data structure that is used to implement priority queues, where the highest priority element is always at the root.
Linked lists
A data structure that stores elements in nodes, where each node contains a value and a pointer to the next node.
Double linked lists
A linked list where each node has a pointer to both the next and the previous node.
Circular linked lists
A linked list where the last node points to the first node, creating a circular structure.
Pointers
A variable that stores the memory address of another variable.
Binary trees
A tree-based data structure where each node has at most two children.
Non-binary trees
A tree-based data structure where each node can have more than two children.
Nodes
An individual element of a data structure, such as a linked list or a tree.
Parent node
A node that has one or more children.
Left-child node
The child node of a parent that appears to the left.
Right-child node
The child node of a parent that appears to the right.
Subtree node
A smaller tree that is part of a larger tree.
Root node
The topmost node in a tree.
Leaf node
A node that has no children.
Tree traversal
The process of visiting all nodes in a tree data structure.
Pre-order traversal
A type of tree traversal where the root node is visited first, followed by the left subtree and then the right subtree.
Post-order traversal
A type of tree traversal where the left subtree is visited first, followed by the right subtree, and then the root node.
In-order traversal
A type of tree traversal where the left subtree is visited first, followed by the root node, and then the right subtree.
Recursion
A programming technique where a function calls itself.
Base case
The terminating condition for a recursive function.
Recursive case
The condition where a recursive function continues to call itself.