COMP 200 Elements of Computer Science &
COMP 130 Elements of Algorithms and Computation
Spring 2012

COMP 200 meets MWF 10:00am–10:50am in Duncan Hall Symonds II Lab. While class notes will be posted here, class attendance and participation is expected.

To turn in assignments, see announcements and view scores, please go to the COMP 200 Spring 2012 OWL-Space site.

The following schedule is tentative and will be updated as needed.

Overview
 
M 9 Jan Computational Thinking, Course Pragmatics  
W 11 Jan Installing Python, Introductory Python “Finger Exercises”  
Module 1: Predator-Prey Modeling
 
F 13 Jan From Problem to Algorithm, Program Decomposition & Lists Finger Exercises  
W 18 Jan From Algorithm to Code (code)  
F 20 Jan Understanding Our Predator-Prey Algorithm & Code  
M 23 Jan Improving the Accuracy of the Algorithm  
W 25 Jan Improving the Accuracy of the Algorithm (conclusion) (code), Extending the Algorithm using Conditionals (code), Conditionals & Logic Finger Exercises  
F 27 Jan Practice with Python Control Flow  
Module 2: Text Analysis & Generation
 
M 30 Jan Text analysis introduction  
W 1 Feb String Matching (algorithm at end of class)  
F 3 Feb String Matching (updated algorithm and notes, code), Regular Expression Finger Exercises  
M 6 Feb String Matching with Regular Expressions  
W 8 Feb Exam 1 Review (study topics guide)  
F 10 Feb Exam 1  
M 13 Feb Counting word frequencies (sample text files), Dictionary finger exercises  
W 15 Feb Counting word frequencies (continued)  
F 17 Feb Exam 1 Summary, Practice with Dictionaries — Substitution Ciphers  
M 20 Feb Counting word sequence frequencies  
W 22 Feb More exercises  
F 22 Feb Text Analysis — Principal Component Analysis  
M 5 Mar Text Generation — Who was Mark V Shaney?  
W 7 Mar Text Generation — Who was Mark V Shaney? (continued), Johnny B. Goode example, Eight Days a Week example, Scientific American article  
F 9 Mar Practice with nested data structures  
Module 3: Graphs/Networks
 
M 12 Mar Graphs Introduction  
W 14 Mar Practice with Graphs  
F 16 Mar Exam 2 Review (study topics guide)  
M 19 Mar Exam 2 Review (study topics guide)  
W 21 Mar Graph Searching Introduction  
M 26 Mar Aside: Introduction to Recursion (code)  
W 28 Mar Aside: Another Recursion Example, Tower of Hanoi applet (code)  
F 30 Mar Aside: Another Recursion Example (code)  
M 2 Apr Depth-First Search (code)  
W 4 Apr Breadth-First Search (pseudo-code)  
F 6 Apr Dijkstra's Shortest Path (applet 1, applet 2, pseudo-code)  
M 9 Apr Dijkstra's Shortest Path: Priority Queues (code)  
W 11 Apr Dijkstra's Shortest Path: Priority Queues (continued) (code)  
F 13 Apr Dijkstra's Shortest Path: networkx library  
Module 4: Probability and Bayesian Inference
 
M 16 Apr Computing with Probabilities  
W 18 Apr Bayesian Inference  
F 20 Apr Exam 3 Review (study topics guide)