Contact | References | Grading | Objective | Schedule&Materials
Welcome to the CS2223 homepage. Here you'll find general information about the course, useful links, and downloadable materials that, when combined with participation in the lectures and labs, will help you benefit as much as possible from taking CS2223. Use the menu options above to find your way around.
Nastaran Baradaran
Yan Huang
What this course is about
This course provides an introduction to the design and analysis of
algorithms. Design topics discussed include greedy algorithms, divide
and conquer, and dynamic programming. Analysis topics include asymptotic
notation, worst-case and average-case analysis, and recurrence equations.
Specific algorithms from several areas including sorting and graph theory
will be covered.
Recommended background
You should have experience with programming techniques and basic data
structures (preferably in in C/C++ or Java) at the level of
CS 2005, as well as basic knowledge of discrete mathematics at the level of
CS2022 / MA2201.
Approximate Schedule of Topics
Notes:
Some deviations from this schedule may occur.
Updates will be made during the term, and will appear only at
http://www.cs.wpi.edu/~alvarez/CS2223/.
Week |   Reading/Homework | Topics |
Mar. 16-17 | 1.1-1.3, 2.1-2.7 | Overview
Course Objectives Algorithms Problems, instances Efficiency Examples |
Mar. 20-24 |
3.1-3.3, 4.1-4.5, 4.7.1-4.7.3
5.1-5.5 (review) also see 1.6.4 |
Analysis
Asymptotic notation Euclid's gcd algorithm Recurrence equations Data structures |
Mar. 27 - 31 | 5.7, 5.9, 6.1-6.4 |
Heaps
Heapsort
Greedy algorithms
|
Apr. 3-7
Test 1, Apr. 7 |
6.4, 7.1-7.2
Practice problems for Exam 1
|
Greedy algorithms
Huffman coding |
Apr. 10-14 | 7.1-7.5, 7.7 |
Divide and conquer
|
Apr. 17-21
No class Th. Apr. 20 |
8.1-8.5 |
Dynamic programming
Knapsack problem All-pairs shortest paths |
Apr. 24-28 | 9.3-9.6, 10.1-10.5 |
Graph searching
Depth-first Breadth-first Backtracking
Intro to probabilistic algorithms
|
May 1-4
Test 2, May 2 Term ends Th. May 4 |
Extra Credit Problem (due May 1 by 9 am)
Practice problems for Exam 2
|
Additional topics if time allows |