All curricula

Data Structures & Algorithms curriculum

A data structures and algorithms path from complexity and linear structures through trees, heaps, graphs, dynamic programming, and implementation audits.

Intermediate CS / AP CSA bridge / intro college CS2

Data Structures & Algorithms curriculum

A data structures and algorithms path from complexity and linear structures through trees, heaps, graphs, dynamic programming, and implementation audits.

Pacing
10 units, 20-30 weeks self-paced
Units
10 unit sequence
Practice
40 checked answers
Support
Self-paced or tutor-guided
Outcomes
  • Choose data structures based on operations, invariants, and tradeoffs.
  • Analyze algorithms with Big-O reasoning and edge-case tests.
  • Implement classic structures and algorithms in a deterministic, testable style.

Unit sequence

Built for independent progress first, then tutor support where the student gets stuck.

  1. 01

    Algorithm analysis and Big-O

    • Estimate time and space complexity.
    • Separate best, average, and worst cases.

    Practice: Analyze three implementations of the same task and justify their asymptotic costs.

    Original practice checks

    Answer in PeerTutor, then use the explanation or bring the miss to a tutor.

    4 checked answers
    Complexity

    What is the Big-O for scanning every item in a list of n items once?

    Algorithm analysis

    Which input should be checked when evaluating worst-case behavior?

    Unit readiness

    Which target best matches the Data Structures & Algorithms unit "Algorithm analysis and Big-O"?

    Practice artifact

    Which practice artifact should you produce for "Algorithm analysis and Big-O" before asking a tutor for help?

  2. 02

    Arrays, lists, and linked structures

    • Compare contiguous arrays, dynamic arrays, and linked lists.
    • Use invariants for insertion and deletion.

    Practice: Implement a small list abstraction and test empty, one-item, and many-item cases.

    Original practice checks

    Answer in PeerTutor, then use the explanation or bring the miss to a tutor.

    4 checked answers
    Arrays

    In a zero-indexed array, what is the index of the first item?

    Linked lists

    A linked list is strongest when you need:

    Unit readiness

    Which target best matches the Data Structures & Algorithms unit "Arrays, lists, and linked structures"?

    Practice artifact

    Which practice artifact should you produce for "Arrays, lists, and linked structures" before asking a tutor for help?

  3. 03

    Stacks, queues, and deques

    • Use LIFO and FIFO abstractions.
    • Model call stacks, scheduling, buffering, and undo.

    Practice: Build a balanced-symbol checker and a queue simulation.

    Original practice checks

    Answer in PeerTutor, then use the explanation or bring the miss to a tutor.

    4 checked answers
    Stacks

    A stack uses which access pattern: FIFO or LIFO?

    Queues

    A normal queue uses which access pattern?

    Unit readiness

    Which target best matches the Data Structures & Algorithms unit "Stacks, queues, and deques"?

    Practice artifact

    Which practice artifact should you produce for "Stacks, queues, and deques" before asking a tutor for help?

  4. 04

    Recursion and divide-and-conquer

    • Write base cases and recursive cases deliberately.
    • Trace recursion trees and combine steps.

    Practice: Solve recursive search, tree, and divide-and-conquer problems with trace tables.

    Original practice checks

    Answer in PeerTutor, then use the explanation or bring the miss to a tutor.

    4 checked answers
    Recursion

    Every correct recursive algorithm needs a base case. Type the missing phrase: base ____.

    Divide and conquer

    Merge sort splits the input, sorts parts, then:

    Unit readiness

    Which target best matches the Data Structures & Algorithms unit "Recursion and divide-and-conquer"?

    Practice artifact

    Which practice artifact should you produce for "Recursion and divide-and-conquer" before asking a tutor for help?

  5. 05

    Searching and sorting

    • Implement linear search, binary search, selection, insertion, merge, and quicksort.
    • Explain stability, in-place behavior, and comparison bounds.

    Practice: Benchmark sorts on already-sorted, reverse-sorted, and random data.

    Original practice checks

    Answer in PeerTutor, then use the explanation or bring the miss to a tutor.

    4 checked answers
    Binary search

    Binary search on 64 sorted items needs at most how many halvings to reach one item?

    Sorting

    Which sort has typical O(n log n) time and stable merge behavior?

    Unit readiness

    Which target best matches the Data Structures & Algorithms unit "Searching and sorting"?

    Practice artifact

    Which practice artifact should you produce for "Searching and sorting" before asking a tutor for help?

  6. 06

    Hash tables, maps, and sets

    • Use hashing, collision handling, load factors, and resizing.
    • Choose maps and sets for membership and counting tasks.

    Practice: Implement a frequency table and explain collision behavior.

    Original practice checks

    Answer in PeerTutor, then use the explanation or bring the miss to a tutor.

    4 checked answers
    Hash tables

    If two keys map to the same bucket, that event is called a what?

    Sets

    A set is best when the main operation is:

    Unit readiness

    Which target best matches the Data Structures & Algorithms unit "Hash tables, maps, and sets"?

    Practice artifact

    Which practice artifact should you produce for "Hash tables, maps, and sets" before asking a tutor for help?

  7. 07

    Trees, heaps, and priority queues

    • Use binary trees, BSTs, traversals, heaps, and priority queues.
    • Maintain ordering and heap invariants.

    Practice: Implement traversal methods and a priority queue test suite.

    Original practice checks

    Answer in PeerTutor, then use the explanation or bring the miss to a tutor.

    4 checked answers
    Trees

    In a binary search tree, values less than a node usually go to which side?

    Heaps

    A priority queue is commonly implemented with a:

    Unit readiness

    Which target best matches the Data Structures & Algorithms unit "Trees, heaps, and priority queues"?

    Practice artifact

    Which practice artifact should you produce for "Trees, heaps, and priority queues" before asking a tutor for help?

  8. 08

    Graphs and traversal

    • Represent graphs with adjacency lists and matrices.
    • Use BFS, DFS, shortest paths, and topological ordering.

    Practice: Model a course-prerequisite graph and detect whether an ordering exists.

    Original practice checks

    Answer in PeerTutor, then use the explanation or bring the miss to a tutor.

    4 checked answers
    Graphs

    In an unweighted graph, BFS finds shortest paths by number of what?

    Traversal

    DFS is naturally implemented using recursion or which structure?

    Unit readiness

    Which target best matches the Data Structures & Algorithms unit "Graphs and traversal"?

    Practice artifact

    Which practice artifact should you produce for "Graphs and traversal" before asking a tutor for help?

  9. 09

    Dynamic programming and greedy algorithms

    • Identify overlapping subproblems and optimal substructure.
    • Compare greedy choices with DP recurrences.

    Practice: Solve coin change or knapsack with a recurrence table and edge cases.

    Original practice checks

    Answer in PeerTutor, then use the explanation or bring the miss to a tutor.

    4 checked answers
    Dynamic programming

    Dynamic programming stores solutions to overlapping subproblems in a table called a what?

    Optimization

    DP is appropriate when a problem has optimal substructure and:

    Unit readiness

    Which target best matches the Data Structures & Algorithms unit "Dynamic programming and greedy algorithms"?

    Practice artifact

    Which practice artifact should you produce for "Dynamic programming and greedy algorithms" before asking a tutor for help?

  10. 10

    Implementation capstone

    • Design an algorithmic module with tests and complexity notes.
    • Document preconditions, invariants, and failure cases.

    Practice: Ship a small pathfinding, scheduler, search, or compression project with a correctness note.

    Original practice checks

    Answer in PeerTutor, then use the explanation or bring the miss to a tutor.

    4 checked answers
    Capstone

    A correct algorithm write-up should include complexity, proof idea, and what kind of cases?

    Implementation audit

    Which is strongest evidence that an algorithm is ready?

    Unit readiness

    Which target best matches the Data Structures & Algorithms unit "Implementation capstone"?

    Practice artifact

    Which practice artifact should you produce for "Implementation capstone" before asking a tutor for help?

Source library

These are source links, not scraped course copies. Licenses differ, so the label tells students how each source is used.

View the full citation index