Monday | T | Wednesday | R | F | Saturday |
---|---|---|---|---|---|
8
|
9
|
10
Before Class:
Syllabus Algorithm Analysis: Introduction (6:41) Algorithm Analysis: Growth Rates (16:46) Algorithm Analysis: Case Study (9:26) Insertion Sort (6:46) Algorithm Analysis: Introduction Slides Algorithms: Design and Correctness Slides Analyzing Algorithms Slides Algorithm Efficiency Slides (optional) Chapters 1, 2, 3 Divide and Conquer (2:37) Divide and Conquer: Closest Points (4:43) Recursion and Recurrence Slides (optional) Chapter 4 Class: Introduction, Syllabus and Algorithm Analysis Algorithm Analysis (exercises) Recursion (GCD.java, BinarySearch.java) Divide and Conquer (exercises) Class Notes |
11
|
12
|
13
|
15
Due:
Syllabus Quiz Computational Complexity and Recursion Quiz |
Deadline for full refund
16
|
17
Before Class:
Sorting Introduction (3:12) Priority Queues (2:42) Heaps (10:52) Heaps: BuildHeap (6:42) Heaps: Efficiency (6:57) Heapsort (6:12) Heapsort Slides Mergesort (16:17) Quicksort (16:52) Quicksort Slides Linear Sorts (11:33) Linear Sorting Slides Radix Slides External Sorting (11:54) (optional) Chapters 6, 7, 8, 9 Class: Algorithm Analysis Follow-up Heaps (exercises) Sorting Algorithms (exercises) |
18
|
19
|
20
|
22
Due:
|
23
|
24
Before Class:
Chapter 10 - Elementary Data Structures Chapter 12 - Binary Search Trees Linked Lists (12:56) (see also PowerPoint animations) Trees: Terminology A (12:07) Trees: Terminology B (4:33) Trees: Binary Trees (12:04) Trees: Binary Search Trees A (14:39) Trees: Binary Search Trees B (5:00) Trees: Efficiency (9:12) Class: Tracing Sorting Algorithms (exercises) Stacks and Queues (exercises) Class Notes |
25
|
26
|
27
|
29
|
30
|
31
Before Class:
Chapter 11 - Hashing Hashing: Introduction (11:54) Hashing: Handling Collisions (14:53) Hashing: Rehashing (1:46) Hashing: Efficiency (9:27) Class: Linked Lists (exercises) Binary Search Trees (exercises) Hashing (exercises) |
Monday | T | Wednesday | R | F | Saturday |
---|---|---|---|---|---|
1
|
2
|
3
|
|||
5
Due:
|
6
|
7
Before Class:
Chapter 15 - Dynamic Programming (53 pages) Class: Hashing (exercises) Dynamic Programming
|
8
|
9
|
10
|
12
Due:
Hashing Dynamic Programming |
13
|
14
Before Class:
Chapter 16 - Greedy Algorithms (36 pages) Algorithm Design: Greedy Algorithms (4:35) Algorithm Design: Greedy Algorithms: Huffman Codes (9:10) Class: Greedy Algorithms (exercises) |
15
|
16
|
17
|
19
Due:
Greedy Algorithms |
20
College Career Fair (SCCT Lobby 10 AM - 2 PM)
|
21
Before Class:
Chapter 20 - Elementary Graph Algorithms (35 pages) Elementary Graph Algorithms (Basics) Class: Elementary Graph Algorithms (exercises) |
22
|
23
|
24
|
26
Due:
Elementary Graph Algorithms (Application 1) |
27
|
28
Before Class:
Graph Traversals (16:20) Graphs: Topological Sorting (3:58) Graphs: Topological Sorting Example (4:25) Class: Elementary Graph Algorithms (cont'd) (exercises) Class Notes |
29
|
Monday | T | Wednesday | R | F | Saturday |
---|---|---|---|---|---|
Deadline to Withdraw with a WP
1
|
2
|
||||
4
Due:
Elementary Graph Algorithms (Application 2) |
5
|
6
Before Class:
Chapter 21 - Minimum Spanning Trees (19 pages) Graphs: Spanning Trees (11:25) Spanning Trees - Content Class: Elementary Graph Algorithms (cont'd) (exercises) Spanning Trees (exercises) |
7
|
8
Midterm Exam - Proctored (starts) (topics)
|
9
|
11
Midterm Exam - Proctored (ends) (topics)
|
12
|
13
Before Class:
Sections 22.0 - 22.3 - Single-Source Shortest Paths (19 pages) Graphs: Shortest Paths (9:01) Single-Source Shortest Paths - Content Class: Minimum Spanning Trees (exercises) Single-Source Shortest Paths (exercises)
|
14
|
15
|
16
|
18
Spring Break
|
19
Spring Break
|
20
Spring Break
|
21
Spring Break
|
22
Spring Break
|
23
|
25
Due:
Spanning Trees - Application Single-Source Shortest Paths (Application) |
26
|
27
Before Class:
Single-Source Shortest Paths Assignment Chapter 26 - Parallel Algorithms (44 pages) Class: Parallel Algorithms (slides) |
28
|
29
|
30
|
Monday | T | Wednesday | R | F | Saturday |
---|---|---|---|---|---|
1
|
2
|
3
|
4
|
5
|
6
|
8
Due:
Linear Programming - Application |
9
|
10
|
11
|
12
|
13
|
15
|
16
|
17
Before Class:
Sections 35.0 - 35.3 - Approximation Algorithms (17 pages) Class: Approximation Algorithms (slides) |
18
|
19
|
20
|
22
Due:
Optional Project 4 - Linear Program Converter (see also Section 29.1 and 29.3 of the 3rd edition in the CougarVIEW Assignment) |
23
Due:
Approximation Solution Presentations (Extra Credit) (CougarVIEW Discussion) |
Last Day of Class
24
|
25
|
26
|
27
|
29
|
Course Evaluation Surveys close; Study Day
30
|
Monday | T | Wednesday | R | F | Saturday |
---|---|---|---|---|---|
1
|
2
|
3
|
4
Online Final Exam - Proctored (ends) (topics)
|