Learning Outcomes

This page collects together all of the “outcomes” associated with individual modules. Outcomes identify what students will know and be able to do if they master the material.

Perform simple algorithm analysis, including:

Referencing modules: Analysis examples

Characterize algorithms with respect to asymptotic growth, including:

Referencing modules: Growth of functions

Define, implement, and characterize behavior of common abstract data types, including

Referencing modules: Abstract data types

Carry out probabilistic analysis, including:

Referencing modules: Probabilistic Analysis

Design, implement, and characterize the behavior of the hash table data structure, including:.

Referencing modules: Hash Tables

Design and characterize behavior of divide and conquer algorithms, including:

Referencing modules: Divide and conquer

Define and characterize behavior of binary search trees, including:

Referencing modules: Binary Search Trees

Characterize behavior of heaps, heapsort, and priority queues, including:

Referencing modules: Heapsort

Define and characterize behavior of the quicksort algorithm, including:

Referencing modules: Quicksort

Characterize the behavior of the balanced tree algorithm, including:

Referencing modules: Balanced Trees

Apply the greedy algorithm to problem solving, including:

Referencing modules: Greedy Algorithms

Apply dynamic programming to problem solving, including

Referencing modules: Dynamic Programming

Define, implement, and characterize behavior of graphs, including:

Referencing modules: Graphs

Understand amortized analysis, including:

Referencing modules: Amortized analysis

Manipulate disjoint sets, including:

Referencing modules: Disjoint sets

Characterize behavior of minimum spanning tree data structures, including:

Referencing modules: Minimum spanning tree

Apply single source shortest path algorithms, including:

Referencing modules: Single source shortest paths

Apply all pairs shortest paths algorithms, including:

Referencing modules: All pairs shortest paths

Apply the maximum flow algorithm, including:

Referencing modules: Maximum flow

Apply linear programming techniques, including:

Referencing modules: Linear programming