Written Exam 1: Monday, October 1
Practice Exam (Fall 2011)
Sample Answers (Fall 2011)
Exam 1A (Fall 2012)
Exam 1B (Fall 2012)
Sample Answers Version A (Fall 2012)
Sample Answers Version B (Fall 2012)
Lab Exam 1: Thursday, October 18
Practice Exam (Spring 2012)
Sample Answers (Spring 2012)
Exam (Fall 2012)
Written Exam 2: Monday, October 29
Practice Exam (Spring 2012)
Sample Answers (Spring 2012)
Sample Answers Version A (Fall 2012)
Sample Answers Version B (Fall 2012)
Written Exam 3: Wednesday, November 28
Practice Exam (Spring 2012)
Sample Answers (Spring 2012)
Sample Answers Version A (Fall 2012)
Sample Answers Version B (Fall 2012)
Lab Exam 2: Thursday, December 6
Practice Exam (Spring 2012)
Sample Answers (Spring 2012)
Version A (Spring 2012)
Version B (Spring 2012)
Version C (Spring 2012)
Version D (Spring 2012)
Sample Answers (Fall 2012)
Final Exam: Friday, December 14, 1:00 pm to 4:00 pm. Locations: DH 2210-2302-2315.
Sample Answers (Fall 2012)
You must take all exams at the times they are given. NO MAKEUPS FOR EXAMS will be allowed except for acceptable documented circumstances (e.g. major illness, death in immediate family, university-sanctioned event with verification from advisor/coach, etc.).
Readings are from the textbooks Explorations in Computing (EC) and Blown to Bits (BB).
Additional readings will be assigned as necessary.
*No classes 9/3 (Labor Day)
Course Schedule & Readings (subject to change)
from Babbage to the World Wide Web
EC Ch. 1, BB Ch. 1
variables, types, statements, functions
EC Ch. 2, BB Ch. 2 pp. 19-42
loops, conditionals, GCD, Sieve of Eratosthenes
EC Ch. 3
using arrays, linear search, selection sort, order of complexity
EC Ch. 4
binary search, merge sort, fractals, and other recursive algorithms
EC Ch. 5
lists, stacks, queues, hash tables, trees and graphs
EC Ch. 6
Optional: Touretzky 8.1, 8.2, 8.4, 8.6, 8.8, 8.9
integers, text, images, sound and compression
EC Ch. 7, BB Ch. 3
Boolean logic, CPU layers as abstractions, instructions as data and data as instructions
EC Ch. 8
random number generators, shuffling, games with random numbers,
cellular automata
EC Ch. 9
sorting networks, pipelining, and mulitasking
BB Ch. 4 pp. 109-137
design of the Internet, network layers as abstractions,
security/RSA
BB Ch. 5 and Appendix A
graphics in Ruby, N-body simulation
EC Ch. 11
ELIZA and the Turing Test, games (search space and heuristics), Watson and machine learning
EC Ch. 10
Map coloring and the traveling salesperson, P vs. NP, The halting problem
EC Ch. 12
**No classes 10/19 (Mid-semester Break)
***No classes 11/21-11/24 (Thanksgiving Holiday)