Syllabus
Here is the complete syllabus. --Click here.--
Long Distance Students
I will be using Zoom to stream and record lectures. You will need to use a web-camera. The same link is also for office hours. Here is the zoom information:
Thomas Schwarz is inviting you to a scheduled Zoom meeting. Topic: Algorithms Time: This is a recurring meeting Meet anytime Join Zoom Meeting https://us02web.zoom.us/j/81258461828?pwd=WElTYlJxRU8ybkhONyt6ZXlFOEZhUT09 Meeting ID: 812 5846 1828 Passcode: 834069
Office Hours
- Thomas Schwarz MWTh 14:10 - 15:00 or by appointment.
Examinations
Contents
Recordings
- August 30, 2021 [click here]
- September 1, 2021 I click here
- September 8, 2021 II click here
- September 13, 2021 II click here
- September 15, 2021 II click here
- September 20, 2021 II click here
- September 22, 2021 II click here
- September 27, 2021 II click here
- September 29, 2021 II click here
- October 4, 2021 II click here
- October 6, 2021 II click here
- October 11, 2021 II click here
- October 13, 2021 II click here
- October 18, 2021 II click here
- October 20, 2021 II click here
- October 25, 2021 II click here
- October 27, 2021 II click here
- November 1, 2021 II click here
- November 3, 2021 II click here
- November 8, 2021 II click here
- November 10, 2021 II click here
- November 15, 2021 II click here
- November 17, 2021 II click here
- November 22, 2021 II click here
- November 29, 2021 II click here
- December 1, 2021 II click here
- December 6, 2021 II click here
- December 8, 2021 II click here
Homeworks
- Homework 1 [pdf]
- Homework 2 [pdf]
- Homework 3 _[pdf] due Oct 15. 2021__
- Homework 4 _[pdf] due Oct 27. 2021__
- Homework 5 [pdf] due Nov, 10, 2021
- Homework 6 [pdf] due Nov, 17, 2021
- Homework 7 [pdf] due Dec. 8, 2021
- Homework 8 [pdf] due Dec. 13, 2021
- Homework 9 [pdf] due Nov, 17, 2021
Week 1
Class 1: Introduction
August 30, 2021
Introduction
- Presentation (pdf) [click here]
- Presentation (key) [click here]
Class 2: Correctness and Loop Invariants
September 1, 2021
Introduction
- Presentation (pdf) [click here]
- Presentation (key) [click here]
Week 2
Class 3: Divide and Conquer, Recurrence Relations
September 8, 2021
- Divide and Conquer (pdf) [click here]
- Divide and Conquer (key) [click here]
- Recurrence (pdf) [click here]
- Recurrence (key) [click here]
Week 3
Class 4: Containers: B-Trees
September 13, 2021
- Data Structures (pdf) [click here]
- Data Structures (key) [click here]
Class 5: Containers: Linear Hashing
September 15, 2021
- Data Structures (pdf) [click here]
- Data Structures (key) [click here]
Class 6: Multiprocessor Programming 1
September 20, 2021
- Parallel Programming 1 (pdf) [click here]
- Parallel Programming 1 (key) [click here]
Class 7: Multiprocessor Programming 2
September 22, 2021
- Parallel Programming 2 (pdf) [click here]
- Parallel Programming 2 (key) [click here]
Class 8: Locking Algorithms
September 27, 2021
- Parallel Programming 3 (pdf) [click here]
- Parallel Programming 3 (key) [click here]
Class 9: Consensus
September 29, 2021
- Consensus (pdf) [click here]
- Consensus (key) [click here]
Class 10: Spin Locks with hardware support
September 29, 2021
- Consensus (pdf) [click here]
- Consensus (key) [click here]
Class 11: Linked lists
October 4, 2021
- Linked List (pdf) [click here]
- keynote [click here]
Class 12: Optimistic linked lists
October 6, 2021
- Linked List (pdf) [click here]
- keynote [click here]
Class 13: Lazy optimistic linked lists and CAS
October 11, 2021
- Linked List (pdf) [click here]
- keynote [click here]
Class 14: Concurrent Queues
October 13, 2021
- Concurrent Queue (pdf) [click here]
- keynote [click here]
Class 15: Synchronization mechanisms: Conditions
October 15, 2021
- Concurrent Queue (pdf) [click here]
- keynote [click here]
Class 16: Concurrent Stacks
October 18, 2021
- Concurrent Queue (pdf) [click here]
- keynote [click here]
Class 17: Concurrent Stacks, Concurrent Containers
October 20, 2021
- Concurrent Queue (pdf) [click here]
- Concurrent Queue (keynote) [click here]
- Srinivasan, Carey: Performance of B-Tree Concrrency Control Algorithms [click here]
- Amortized Analysis [click here]
- keynote [click here]
- Amortized Analysis [click here]
- keynote [click here]
- Amortized Analysis [click here]
- keynote [click here]
Class 18: Concurrent B-trees
October 25, 2021
Class 19: Concurrent B-trees
October 25, 2021
Class 20: Amortized Analysis
November 1, 2021
Class 21: Fibonacci Heaps
November 3, 2021
Class 22: Disjoint Set Data Structures
November 8, 2021
Class 23: Graph Algorithms 1
November 10, 2021
Class 24: Graph Algorithms 2
November 15, 2021
Class 25: Graph Algorithms 3
November 17, 2021
Class 26: Graph Algorithms 4
November 17, 2021
Class 27: Graph Algorithms 5
November 22, 2021
Class 28: Graph Algorithms 6
December 1, 2021
Class 29: Graph Algorithms 7
December 1, 2021