CS 415, Section 001 | Sonoma State University | Spring, 2023 |
Algorithm Analysis
|
||
Instructor: Henry M. Walker
Lecturer, Sonoma State University |
Although much of this course is well developed, some details can be
expected to evolve as the semester progresses.
Any changes in course details will be announced promptly during class.
Tuesday | Thursday |
---|---|
January 24 Getting Started
Introduction to Algorithmic Analysis
Reading:
| January 26
Functions, Growth Rates, Most Significant Terms
Examples of Algorithmic Analysis
Reading:
Assignment on Analysis of Non-recursive Algorithms Due: Thursday, February 2 |
January 31
Maintenance in the Software Life Cycle
Algorithmic Analysis via Experimentation
Reading
| February 2
Recursive Algorithms
Reading
In-class Quiz #1 Assignment on Analysis of Non-recursive Algorithms, Recursive Relations, and Program Format Due: Tuesday, February 14 |
February 7
Analysis of Recursive Algorithms
Reading
| February 9
Decrease and Conquer
Introduction to Assertions
Readings:
Assignment on Recursive Algorithms, Insertion Sort, and Assertions Due: Thursday, February 16 |
February 14
Graphs and Internal Representations
Loop Invariants: singly-nested loops
Reading:
| February 16
Loop Invariants with Nested Loops
In-class Quiz #2 Assignment on Graph Basics and Invariants for Singly-nested Loops Due: Tuesday, February 28 |
February 21
Loop Invariants/Divide and Conquer Algorithms
Graphs and Topological Sorting
Readings:
| February 23
Reflections on Topics to Date
Assignment on Topological Sorting, Partition, and Quicksort Due: Tuesday, March 7 |
February 28
Brute Force and Exhaustive Search
Divide-and-Conquer
Readings:
| March 2
Transform and Conquer
Readings:
In-class Quiz #3 Assignment on Brute Force Algorithms, Merge Sort, and Heaps Due: Tuesday, March 14 |
March 7
Transform-and-Conquer
Algebraic Manipulation for Efficiency
Reading
| March 9
Time to Catch Up Assignment on Sorting and Using Algebra to Improve Efficiency Due: Thursday, March 30 |
March 14
Test 1 (March 14) | March 16
Films and Responses: Outside Class Activity Assignment involving Films Email responses by Tuesday, March 28 |
March 21
Spring Break (Tuesday, March 21) | March 23
Spring Break (Thursday, March 23) |
March 28
Notes from solutions to Test 1 More Algebra for Efficiency
Space and Time Trade-offs: Dynamic Programming
Reading
| March 30
Hashing
Hashing
Reading:
Assignment on Binary Exponentiation, Dynamic Programming, and Hashing Due: Thursday, April 13 |
April 4
Hashing
Numeric Data Representation
Reading: | April 6
Some Consequences of Numeric Data Representation
In-class Quiz #4 Quiz Revision Due: Tuesday, April 18 Assignment on Consequences of Numeric Representation Due: Tuesday, April 18 |
April 11
Greedy Techniques
Reading:
| April 13
Greedy Techniques
Reading:
Assignment on Greedy Algorithms Due: Tuesday, April 25 |
April 18
Time to catch up | April 20
Test 2 |
April 25
Notes from solutions to Test 2 Introduction to Class P and NP | April 27
Limitations of Algorithm Power
Reading:
In-class Quiz #5 Assignment on Classes P and NP Due: Tuesday, May 9 |
May 2
Classes P and NP
More Limitations of Computing
Reading:
| May 4
More Limitations of Computing
In-class Quiz #6 Coping with Limitations of Algorithm Power
Reading:
Assignment on Coping with Limitations of Computing Due: Thursday, May 11 However, if this assignment is submitted on Tuesday, May 9, it will be graded and returned on Thursday, May 11. |
May 9
Time to Catch Up | May 11
Last day of class: Thursday, May 11 |
May 16
Exam: Tuesday, May 16: 1:00-3:00 | May 18 |
created 22 June 2021 developed and refined Summer 2021 revised Summer 2022 revised January 2023 |
![]() ![]() |
For more information, please contact Henry M. Walker at walker@cs.grinnell.edu. |