15-122: Principles of Imperative Computation (Sp'14)

Schedule

DateLecture NotesExtraDue
Mon01/13
Tue01/14Overviewcode 
Wed01/15Rec: Syntax Errors and Compiler
Thu01/16Contracts & Program Reasoningcode 
Fri01/17Rec: Reasoning about while LoopssolQuiz 1 
Mon01/20Lab 0 
Tue01/21Ints
Wed01/22Rec: Integer Circle and Hexsol
Thu01/23Arrays & Safe Accesscode Asst 1 
Fri01/24Rec: Pixels, Arrays, for LoopssolQuiz 2 
Mon01/27Lab 1 
Tue01/28Linear Searchcode 
Wed01/29Rec: C0 Debugging, Searchsol
Thu01/30Binary Searchcode Asst 2 
Fri01/31Rec: Binary Search, ProofssolQuiz 3 
Mon02/03Lab 2 
Tue02/04Sortingcode 
Wed02/05Rec: Big-O, Unit Testingsol
Thu02/06Quicksortcode Asst 3 
Fri02/07Rec: Big-O, Quicksort InvariantssolQuiz 4 
Mon02/10Lab 3 
Tue02/11Stacks & Queuescode 
Wed02/12Rec: Stacks, Queues & Clacssol
Thu02/13Pointers & Linked Listscode Asst 4 
Fri02/14Rec: Linked ListssolQuiz 5 
Mon02/17Lab 4 
Tue02/18Implementing Data Structurescode 
Wed02/19Rec: Memory Layout, Recursionsol
Thu02/20Amortized Analysiscode Asst 5 
Fri02/21Rec: ReviewsolQuiz 6 
Mon02/24
Tue02/25Midterm I
Wed02/26Rec: Unbounded Arrays, Amortized Analysissol
Thu02/27Hash TablesAsst 6 
Fri02/28Rec: Hashing, hash tablessolQuiz 7 
Mon03/03Lab 5S 
Tue03/04Interfacescode 
Wed03/05Rec: Hash Table Implementationssol
Thu03/06Binary Search Trees / PrioriQcode Asst 7 
Fri03/07Free: No recitation
Mon03/10Free: Spring Break
Tue03/11Free: Spring Break
Wed03/12Free: Spring Break
Thu03/13Free: Spring Break
Fri03/14Free: Spring Break
Mon03/17Lab 5 
Tue03/18Priority Queues
Wed03/19Rec: BSTs and Backtrackingsol
Thu03/20Restoring Invariantscode Asst 8 
Fri03/21Rec: HeapssolQuiz 8 
Mon03/24Lab 6 
Tue03/25Memory Managementcode 
Wed03/26Rec: C0 -> Ccode 
Thu03/27AVL Treescode Asst 9 
Fri03/28Rec: AVL TreessolQuiz 9 
Mon03/31
Tue04/01Types in Ccode Lab 7 
Wed04/02Rec: &, switch, struct & castsol
Thu04/03Generic Data Structurescode Asst 10 
Fri04/04Rec: Midterm preparationQuiz 10 
Mon04/07
Tue04/08Midterm II
Wed04/09Rec: Function pointers, heap freesol
Thu04/10Free: Carnival
Fri04/11Free: Carnival
Mon04/14Lab 8 
Tue04/15Virtual Machinescode VM
Wed04/16Rec: VM Labcode 
Thu04/17Triescode 
Fri04/18Rec: Trie, trie again & BoggleQuiz 11 
Mon04/21Lab 9S 
Tue04/22Search in Graphscode 
Wed04/23Rec: Graph Search
Thu04/24Spanning Treescode Asst 11 
Fri04/25Rec: Kruskal, BFS, tree distanceQuiz 12 
Mon04/28
Tue04/29Union-Findcode 
Wed04/30Rec: VM Lab hours
Thu05/01Garbage CollectionLab 9 
Fri05/02Rec: Course reviewQuiz 13 
Mon05/05Final
The lecture schedule is tentative!

Lab Schedule

PointsAssignmentDue
Quiz 110Quiz 1Fri 01/17
Lab 05Scavenger Hunt Lab 0codeMon 01/20
Asst 120Theory Assignment 1codeThu 01/23
Quiz 210Quiz 2Fri 01/24
Lab 115Pixels Lab 1codeMon 01/27
Asst 220Theory Assignment 2codeThu 01/30
Quiz 310Quiz 3Fri 01/31
Lab 215Image Lab 2codeMon 02/03
Asst 315Theory Assignment 3codeThu 02/06
Quiz 410Quiz 4Fri 02/07
Lab 315DosLingos Lab 3codeMon 02/10
Asst 415Theory Assignment 4codeThu 02/13
Quiz 510Quiz 5Fri 02/14
Lab 415Claculator Lab 4codeMon 02/17
Asst 520Theory Assignment 5codeThu 02/20
Quiz 610Quiz 6Fri 02/21
Asst 610Theory Assignment 6codeThu 02/27
Quiz 710Quiz 7Fri 02/28
Lab 5SE0 Text Editor Lab 5 (check)codeMon 03/03
Asst 710Theory Assignment 7codeThu 03/06
Lab 535E0 Text Editor Lab 5codeMon 03/17
Asst 815Theory Assignment 8codeThu 03/20
Quiz 810Quiz 8Fri 03/21
Lab 615Peg Lab 6codeMon 03/24
Asst 920Theory Assignment 9codeThu 03/27
Quiz 910Quiz 9Fri 03/28
Lab 720String Buffer Lab 7codeTue 04/01
Asst 1015Theory Assignment 10codeThu 04/03
Quiz 1010Quiz 10Fri 04/04
Lab 820Lights Out Lab 8codeMon 04/14
Quiz 1110Quiz 11Fri 04/18
Lab 9SC0 Virtual Machine Lab 9 (check)codeMon 04/21
Asst 1119Theory Assignment 11codeThu 04/24
Quiz 1210Quiz 12Fri 04/25
Lab 975C0 Virtual Machine Lab 9codeThu 05/01
Quiz 1310Quiz 13Fri 05/02
Sum539points listed
The Lab and Assignment Schedule is tentative!
Theory assignments are due at start of lecture on the due day.
Programming lab assignments are due at 10:00pm on the due day.
Quizzes are due by 10:00pm on the due day. Three lowest quiz scores will be dropped.