Linear Structures
Linked Lists
The Binary Tree
Static vs. Dynamic
Complex Applications
100

This "Last-In, First-Out" (LIFO) data structure is used to manage the "undo" function in word processors.

What is a Stack?

100

This part of a linked list node contains the actual data being stored.

What is the Data field (or Value)?

100

This is the top-most node in a tree structure, from which all other nodes descend.

What is the Root?

100

This type of data structure has a fixed size determined at the time of creation.

What is a Static Data Structure? (Example: Array).

100

This is the standard data structure used to represent the "history" of web pages visited in a browser tab.

What is a Stack?

200

This "First-In, First-Out" (FIFO) structure is used by network buffers and printer spoolers to manage requests.

What is a Queue?

200

This part of a linked list node stores the memory address of the next node in the sequence.

What is a Pointer?

200

These nodes have no children and represent the "end" of a specific branch.

What are Leaves (or Leaf Nodes)?

200

This type of structure can grow or shrink in size during the execution of a program.

What is a Dynamic Data Structure? (Example: Linked List).

200

A binary tree is often used to represent these mathematical groupings to ensure correct order of operations.

What are Expressions (or Expression Trees)?

300

This stack operation removes the top element from the structure.

What is Pop? 

The opposite operation is Push, which adds an element.

300

This specific value is stored in the pointer of the very last node to signify the end of the list.

What is Null?

300

In this specific type of tree, the left child is always smaller than the parent, and the right child is always larger.

What is a Binary Search Tree (BST)?

300

This is a major disadvantage of dynamic data structures regarding computer memory.

What is Overhead (or memory used by pointers)?

300

This is the algorithmic efficiency (Big O) of searching for a value in a balanced Binary Search Tree.

What is O(log n)?

400

In a queue, this term describes the pointer that identifies the next element to be removed.

What is the Head (or Front)?

400

This is the primary advantage of a linked list over a static array when it comes to adding or removing items.

What is Dynamic Size (or ease of insertion/deletion)? 

Unlike arrays, linked lists do not require shifting all subsequent elements when one is removed.

400

This tree traversal method visits the Left subtree, then the Root, then the Right subtree, often used to output data in sorted order.

What is In-order Traversal?

400

This error occurs if you attempt to "push" an item onto a stack that has already reached its maximum capacity

What is Stack Overflow?

400

This type of linked list "wraps around" so that the last node points back to the first.

What is a Circular Linked List?

500

This specific type of queue allows elements with higher urgency to be moved to the front, regardless of when they joined.

What is a Priority Queue?

500

This type of linked list allows you to traverse the data in both forward and backward directions.

What is a Doubly Linked List?

500

This is the name for a smaller tree contained within a larger tree.

What is a Sub-tree?

500

This term describes the process of allocating memory from the "Heap" as the program is running.

What is Dynamic Memory Allocation?

500

This TOK concept questions whether "Abstract" structures exist in reality or if they are just mental models constructed by programmers to manage complexity.

What is Model vs. Reality (or "Is math discovered or invented?")

M
e
n
u