WF 12:00 - 2:30 pm @ MSB 106 June 11th - August 4th Office Hours: WF 3:00 - 4:00 @ MSB 352
This schedule is not final. It may change.
Topics | Subtopics & Slides | Reading | Date |
---|---|---|---|
Introduction | Syllabus | ||
Intro | 6/13 | ||
Ch 1: Algorithm Analysis | Analysis of Algorithms | 1.1, 1.2, 1.3, 1.4 | 6/13 |
Ch 2: Basic Data Structures | Elementary Data Structures | 1.5, 2.1, 2.2, 2.3 | 6/15 |
Priority Queues and Heaps | 2.4.1 - 2.4.4 | 6/20 | |
Dictionaries and Hash Tables | 2.5.1 - 2.5.6 | 6/22 | |
Ch 3: Search Trees and Skip Lists | Binary Search Trees | 3.1.1 - 3.1.6 | 6/22; 6/27 |
Red-Black Trees | 3.3.3 | 6/27 | |
Ch 4: Sorting, Sets, and Selection | Merge Sort | 4.1.1 | 6/27 |
Quick Sort | 4.3.1, 4.6 | 6/29 | |
Sorting Lower Bound | 4.4 | 6/29 | |
Radix Sort | 4.5.1, 4.5.2 | 6/29 | |
Sets | 4.2.1 | 7/6 | |
Selection | 4.7, 4.7.1 - 4.7.3 | 7/6 | |
Ch 5: Fundamental Techniques | Greedy Method | 5.1, 5.1.1, 5.1.2 | 7/11 |
Divide and Conquer | 5.2, 5.2.1 - 5.2.3 | 7/11 | |
Dynamic Programming | 5.3, 5.3.1 - 5.3.3 | 7/13; 7/18 | |
Ch 6: Graphs | Graphs | 6.1 - 6.2 | 7/18 |
Depth-First Search | 6.3.1 | 7/18 | |
Breadth-First Search | 6.3.3 | 7/20 | |
Biconnectivity | 6.3.2 | 7/20 | |
Directed Graphs | 6.4.1, 6.4.2, 6.4.4 | 7/25 | |
Ch 7: Weighted Graphs | Shortest Paths | 7.1, 7.1.1 - 7.1.3, 7.2, 7.2.1 | 7/25 |
Minimum Spanning Tree | 7.3, 7.3.1 - 7.3.3 | 7/27 | |
Ch 8: Network Flow and Matching | Network Flow | 8.1.1, 8.1.2, 8.2.1 - 8.2.3 | 7/27; 8/01 |
Clearly number your solution to each problem. Staple your solutions and bring them to class on the due date. Express your algorithms in pseudo-code when directed. Always provide justification for your answer when asked to give the running time of an algorithm, or when asked to given an algorithm running in a specific time. Be brief and concise, and draw pictures where appropriate.
Sign up for Piazza, a Q&A web service where you can ask and answer questions related to the class.