15110 Principles of Computing

15110
Principles of Computing

FALL 2011

HOME | COURSE INFO | SCHEDULE & EXAMS | LECTURES | LABS | ASSIGNMENTS | RESOURCES

SCHEDULE & EXAMS

Jump Image Fast Links: Exam Information | Course Schedule & Readings

Exam Information

Written Exam 1: Friday, September 30
Sample Answers:
Version A, Version B

Written Exam 2: Monday, October 31
Sample Answers: Version A Q4b diagram (A), Version B Q4b diagram (B)

Written Exam 3: Wednesday, November 30
Sample Answers: Version A, Version B

Lab Exam: Thursday, December 8
Lab Exam Information, Ruby Reference Sheet (pdf) Lab Exam Grading Rubric

Final Exam: Friday, December 16 (8:30-11:30AM)
Optional Review Sessions: Wed, Dec 14 1-3PM and 3-5PM Rooms TBA

You must take all exams (written and lab 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.).

Course Schedule & Readings (subject to change)

All readings are from the textbook Explorations in Computing. Additional readings will be assigned as necessary.

DATES TOPICS CHAPTER
8/29-9/2 A Brief History of Computation
from Babbage to the World Wide Web
1
9/5-9/9* An Introduction to Programming using Ruby
variables, types, statements, functions
2
9/12-9/16 Algorithms
loops, conditionals, GCD, Sieve of Eratosthenes
3
9/19-9/23 Computation using Iteration
using arrays, linear search, selection sort, order of complexity
4
9/26-9/30 Recursive Thinking
binary search, merge sort, fractals, and other recursive algorithms
5
10/3-10/7 Data Organization
lists, stacks, queues, hash tables, trees and graphs
6
10/10-10/14 Data Representation
integers, text, images, sound and compression
7
10/17-10/21** Computer Organization
Boolean logic, CPU layers as abstractions, instructions as data and data as instructions
8
10/24-10/28 Randomness in Computation
random number generators, shuffling, games with random numbers, cellular automata
9
10/31-11/4 Concurrency
sorting networks, pipelining, and mulitasking
 
11/7-11/11 The Internet
design of the Internet, network layers as abstractions, security/RSA
 
11/14-11/18 Simulations
graphics in Ruby, N-body simulation
11
11/21-12/2*** Artificial Intelligence
ELIZA and the Turing Test, games (search space and heuristics), Watson and machine learning
10
12/5-12/9 Computability: The Limits of Computation
Map coloring and the traveling salesperson, P vs. NP, The halting problem
12

*No class 9/5 (Labor Day)
**No class 10/21 (Midterm Break)
***No classes 11/23-11/25 (Thanksgiving Break)