VCE Algorithmics (HESS) covers a core set of ADTs, each suited to different problem types. They can be grouped into:
| Category | ADTs |
|---|---|
| Basic collections | Set, List, Array, Dictionary |
| Access-restricted queues | Stack, Queue, Priority Queue |
| Relational structures | Graph, Tree |
| Decision / search structures | Decision Tree, State Graph |
KEY TAKEAWAY: Choosing the right ADT is the core skill. Each ADT has operations that match certain problem patterns — match the ADT’s capabilities to the problem’s requirements.
Use this decision framework when facing a problem:
Many real-world problems require combinations:
- A graph whose nodes contain dictionaries (e.g., city with attributes)
- A priority queue of lists (e.g., job batches ordered by urgency)
- A dictionary mapping strings to sets (e.g., word → set of documents)
VCAA FOCUS: Exam questions frequently test whether students can select and justify an appropriate ADT or combination of ADTs for a described real-world scenario.
| ADT | Key Property | Typical Use Case |
|---|---|---|
| Set | Unordered, unique | Membership testing, deduplication |
| List | Ordered, allows duplicates | Sequences, iterating |
| Array | Ordered, indexed, fixed size | Direct access by index |
| Dictionary | Key-value pairs | Lookup tables, mappings |
| Stack | LIFO | Undo, DFS, expression parsing |
| Queue | FIFO | BFS, scheduling |
| Priority Queue | Highest priority first | Prim’s, Dijkstra’s, event simulation |
| Graph | Nodes + edges | Networks, relationships |
| Tree | Acyclic connected graph | Hierarchies, spanning trees |
| Decision Tree | Branching decisions | Planning, game trees |
| State Graph | States + transitions | State machines, planning |