Embeddable Exercises/Visualizations
Instructions/documentation for this interface can be found
here.
Algorithm Analysis
Advanced Analysis
Introduction and Mathematical Background
Binary Trees
Sum values in a Binary Tree Slide Show
[Preview]
Preorder Traversal Slideshow
[Preview]
Postorder Traversal Slideshow
[Preview]
Inorder Traversal Slideshow
[Preview]
Binary Tree Preorder Traversal Exercise
[Preview]
Binary Tree Postorder Traversal Exercise
[Preview]
Binary Tree Inorder Traversal Exercise
[Preview]
Tree Traversal Summary Questions
[Preview]
Expression Tree Traversal Slideshow
[Preview]
Tree Overhead Exercise
[Preview]
Complete Tree Exercise
[Preview]
Heap insert Slideshow
[Preview]
Heap Insert Proficiency Exercise
[Preview]
Heap Build Choices
[Preview]
Heapbuild Slideshow
[Preview]
Heap Build Proficiency Exercise
[Preview]
Heap build analysis proof Slideshow
[Preview]
Remove Max Slideshow
[Preview]
Heap Remove Exercise
[Preview]
Remove Any Slideshow
[Preview]
Heap Question Summary
[Preview]
BinaryChapSumm
[Preview]
Binary Trees Recursion
Computational Thinking
Design
File Processing
Formal Languages
NFA2DFATraceCON
[Preview]
ParseTree1CON
[Preview]
Determine Number of nodes
[Preview]
String Generated By a Grammar
[Preview]
Number Of Parse Trees, Problem 1
[Preview]
Number Of Parse Trees, Problem 2
[Preview]
Number Of Parse Trees, Problem 3
[Preview]
Determining Ambiguities
[Preview]
Evaluating Expression Based on Grammar
[Preview]
ParseTreeForExpCON
[Preview]
Associativity
[Preview]
Precedence and associativity
[Preview]
Characterizing Language 3
[Preview]
Extended BNF
[Preview]
PDAtoCFLCON
[Preview]
Context Free Pumping Lemma
[Preview]
Sheet 3 Exercise 1 Regular Expressions Exercise
[Preview]
Sheet 3 Exercise 1 Regular Expressions Exercise
[Preview]
Sheet 3 Exercise 1 Regular Expressions Exercise
[Preview]
Sheet 3 Exercise 4 Give a left-linear grammar for the following an NFA
[Preview]
Sheet 3 Exercise 5 Give a left-linear grammar for a language
[Preview]
Sheet 3 Exercise 6 Find a regular grammar for a language
[Preview]
Sheet 1 Practice Exercise 1 Draw a FA for a language
[Preview]
Sheet 1 Practice Exercise 2 Draw a FA for a language
[Preview]
Sheet 1 Practice Exercise 3 Draw a FA for a language
[Preview]
Sheet 1 Exercise 4 Draw a FA for a language
[Preview]
Sheet 1 Practice Exercise 5 write a grammar for a language
[Preview]
Sheet 1 Practice Exercise 6 write a grammar for a language
[Preview]
Sheet 1 Practice Exercise 7 write a grammar for a language
[Preview]
Sheet 3 Practice 1 Regular Expressions Practice
[Preview]
Sheet 3 Practice 2 Regular Expressions Practice
[Preview]
Sheet 3 Practice 3 Regular Expressions Practice
[Preview]
Sheet 3 Practice 4 Give a left-linear grammar for the following an NFA
[Preview]
Sheet 3 Practice 5 Give a left-linear grammar for a language
[Preview]
Sheet 3 Practice 6 Find a regular grammar for a language
[Preview]
PDAAnBnTraceCON
[Preview]
Regular Expression construction: bba in even position
[Preview]
Regular Expression construction: no aa
[Preview]
Regular Expression construction: one bbb
[Preview]
Regular Grammar: right-linear grammar for NFA
[Preview]
Regular Grammar: left-linear grammar for bbbsaaaas
[Preview]
Regular Grammar: regular grammar for a divisible by 3
[Preview]
DFAIntersectionCON
[Preview]
General Trees
First sequential representation Slideshow
[Preview]
First Sequential Representation Exercise
[Preview]
Second sequential representation Slideshow
[Preview]
Alternate Sequential Representation Exercise
[Preview]
Bit vector sequential representation Slideshow
[Preview]
Bit Vector Sequential Representation Exercise
[Preview]
General Tree sequential representation Slideshow
[Preview]
General Tree Sequential Representation Exercise
[Preview]
Graphs
Hashing
Hashing Intro Slideshow
[Preview]
Open Hashing Proficiency Exercise
[Preview]
Linear Probing By Steps Slideshow 1
[Preview]
Linear Probing By Steps Slideshow 2
[Preview]
Linear Probing By Steps Proficiency Exercise
[Preview]
Pseudo-Random Probing Slideshow
[Preview]
Pseudo-Random Probing Proficiency Exercise
[Preview]
Avoiding the Train
[Preview]
Quadratic Probing Slideshow
[Preview]
Quadratic Probing Proficiency Exercise
[Preview]
Quadratic Probing Problem
[Preview]
Double Hashing Slideshow 2
[Preview]
Double Hashing Slideshow 3
[Preview]
Double Hashing Proficiency Exercise
[Preview]
Analysis of Closed Hashing Summary Exercise
[Preview]
Hashing Chapter Summary Exercise
[Preview]
Indexing
Intro to Software Design
Limits to Computing
Clique
[Preview]
Circuit Satisfiability
[Preview]
Formula Satisfiability
[Preview]
Practice Exercise for Clique
[Preview]
Circuit SAT to SAT
[Preview]
SATto3SATCON
[Preview]
threeSATtoCliqueCON
[Preview]
Clique to IS Reduction
[Preview]
IS to VC Reduction
[Preview]
3-SAT to HC Reduction
[Preview]
HC to TSP Reduction
[Preview]
Linear Structures
Array-based List Variables Slideshow
[Preview]
Array-based List Intro Slideshow
[Preview]
Array-based List Insertion Slideshow
[Preview]
Array-based List Insert Exercise
[Preview]
Array-based List Append Slideshow
[Preview]
Array-based List Remove
[Preview]
Array-based List Remove Exercise
[Preview]
Array-based List Summary
[Preview]
Linked List Slideshow 1
[Preview]
Linked List Slideshow 2
[Preview]
Linked List Variables Slideshow
[Preview]
Linked List Constructors Slideshow
[Preview]
Linked List Insert Slideshow
[Preview]
Linked List Special Insert Slideshow
[Preview]
Linked List Insert Exercise
[Preview]
Linked List Remove Slideshow
[Preview]
Linked List Remove Exercise
[Preview]
Linked List Position Slideshow
[Preview]
Array-based Queue Positions Slideshow
[Preview]
Array-based Queue Drift Slideshow
[Preview]
Array-based Queue Bad Representation Slideshow
[Preview]
Circular Array-based Queue Slideshow
[Preview]
Empty Circular Array-based Queue Slideshow
[Preview]
Array-based Queue Variables Slideshow
[Preview]
Array-based Queue Enqueue Exercise
[Preview]
Array-based Queue Dequeue Exercise
[Preview]
List ADT Positions Slideshow
[Preview]
Memory Management
Buddy Method Visualization
[Preview]
Pointers in Java
Programming Languages
Illustrate Simple Recursion On List To Return Numeric Value
[Preview]
Recursion on Flat lists 1
[Preview]
Illustrate Simple Recursion On List To Define IsMember
[Preview]
Recursion on Flat Lists 2
[Preview]
Illustrate Simple Recursion On List To Do Substitution
[Preview]
Recursion on Flat Lists 3
[Preview]
Illustrate Scope
[Preview]
Illustrate Variable Hoisting
[Preview]
Illustrate Nested Scopes
[Preview]
Illustrate Static vs Dynamic Binding
[Preview]
Illustrate Closures
[Preview]
Higher Order Function 1
[Preview]
Higher Order Functions 2
[Preview]
Higher Order Functions 3
[Preview]
Static vs. Dynamic Binding
[Preview]
Alpha Conversion
[Preview]
Identifying Fixed Point Combinators
[Preview]
Output of SLang2 Program
[Preview]
Tying the Knot
[Preview]
Parameter Passing By Value
[Preview]
Pass-by-value Proficiency Exercise
[Preview]
Parameter Passing By Reference
[Preview]
Pass-by-reference Proficiency Exercise
[Preview]
Call By Value Vs Reference
[Preview]
Parameter Passing By Copy Restore
[Preview]
Copy-restore Proficiency Exercise
[Preview]
Call By Value vs Reference vs CR
[Preview]
Parameter Passing By Macro
[Preview]
Macro Proficiency Exercise
[Preview]
Ref vs CR vs Macro
[Preview]
Parameter Passing By Name
[Preview]
Macro Proficiency Exercise
[Preview]
CR vs Macro vs Name
[Preview]
RP set #31, question #2
[Preview]
Illustrate Basic Lazy List Operations
[Preview]
Illustrate from operation in is module
[Preview]
Illustrate map operation in is module
[Preview]
Illustrate filter operation in is module
[Preview]
Illustrate drop operation in is module
[Preview]
Illustrate iterates operation in is module
[Preview]
Illustrate sieve of Erastosthenes with eager evaluation
[Preview]
Illustrate sieve of Erastosthenes with lazy evaluation
[Preview]
Matching sequence to code that produced it
[Preview]
RP set #32, question #2
[Preview]
Matching sequence to code that produced it (2)
[Preview]
Matching sequence to code that produced it (3)
[Preview]
Annotating Jison
[Preview]
Semantics of lambda calculus
[Preview]
Recursion
Searching
Self-organizing List Slideshow: Frequency Count
[Preview]
Self-organizing List Counter Proficiency Exercise
[Preview]
Self-organizing List Slideshow: Move-to-front
[Preview]
Self-organizing List Move-to-front Proficiency Exercise
[Preview]
Self-organizing List Slideshow: Transpose
[Preview]
Self-organizing List Transpose Proficiency Exercise
[Preview]
Search Structures
Sorting
Insertion Sort Slideshow
[Preview]
Insertion Sort Visualization
[Preview]
Insertion Sort Proficiency Exercise
[Preview]
Insertion Sort Worst Case Slideshow
[Preview]
Insertion Sort Best Case Slideshow
[Preview]
Insertion Sort Average Case Slideshow
[Preview]
Insertion Sort Summary Exercise
[Preview]
Insertion Sort Without Swap Proficiency Exercise
[Preview]
Shellsort Slideshow 1
[Preview]
Shellsort Slideshow 2
[Preview]
Shellsort Slideshow 3
[Preview]
Shellsort Slideshow 4
[Preview]
Shellsort Slideshow 5
[Preview]
Shellsort Slideshow 6
[Preview]
Shellsort Sublist Proficency Exercise
[Preview]
Shellsort Visualization
[Preview]
Shellsort Series Exercise
[Preview]
Shellsort Proficiency Exercise
[Preview]
Shellsort Performance Activity
[Preview]
Shellsort Summary Exercise
[Preview]
Sort Comparison Summary Exercise
[Preview]
Sorting Chapter Summary Exercise
[Preview]
Quicksort Pivot Proficiency Exercise
[Preview]
Quicksort Partition Slideshow
[Preview]
Quicksort Partition Proficiency Exercise
[Preview]
Quicksort Partition Analysis Slideshow
[Preview]
Quicksort Visualization
[Preview]
Quicksort Proficiency Exercise
[Preview]
Quicksort Worst Case Analysis Slideshow
[Preview]
Quicksort Best Case Analysis Slideshow
[Preview]
Quicksort Average Case Analysis Slideshow
[Preview]
Quicksort Summary Exercise
[Preview]
Spatial Data Structures
Under Development