CS-333, Section 90: Design and Analysis of Algorithms

Spring 2007

Class meets:  Tuesday & Thursday, 10:05 - 11:30 am. Room - SW 327.


Instructor:
Dr. Dmitry Ponomarev

Office: T-20, Eng.Building
Office hours: Tuesday, Thursday: 3:00-4:00 pm and by appointment
phone: 777-4023
e-mail: dima at cs dot binghamton dot edu

Teaching Assistant:
Chaitali Gupta (cgupta1@binghamton.edu). Office hours: Monday and Friday, 12-1pm, room N-11.

Course Syllabus

ANNOUNCEMENTS:
The due date for homework 9 is extended to Thursday, April 26th! Chaitali will keep additional office hours on Tuesday, April 24th, from 12:15 to 2:15 in N-11 to help out with this assignment.
The final exam will be held during the last class of the semester - Thursday, May 10th. The review session will be held during the class on May 8th.
The next (and last) quiz will be held on Tuesday, May 1st. Topic: backtracking algorithms

CLASS NOTES (Most of these slides are courtesy of Michal Cutler).
Introduction
Instruction Counts
Problem Instances and Average Case Analysis
Growth of Functions (Section 3)
Amortized Analysis (Section 17)
Heaps (Section 6)
Binomial Heaps (Section 19)
Disjoint Sets (Section 21)
Priority Queues (Section 6.5)
Introduction to Graphs (Section 22.1)
Graph Traversal Algorithms (Sections 22.2 - 22.4)
Introduction to Greedy Algorithms (Section 16)
Minimum Spanning Tree Algorithms (Section 23)
Dijkstra's Shortest Path Algorithm (Sections 24.2 and 24.3)

ALL OF THE ABOVE TOPICS WERE COVERED BY THE MIDTERM EXAM.

Recurrences (Section 4)
Solving recurrences, Divide and Conquer, Mergesort (Section 2.3)
Quicksort algorithm (Section 7)
Algorithms for sorting in linear time (Section 8)
Introduction to Dynamic Programming (Section 15)
Floyd's Algorithm (Section 25.2)
Longest Common Subsequence (Section 15.4)
Greedy vs. Dynamic Programming - the Knapsack Problem (Section 16.2)
Backtracking Algorithms
Introduction to the Theory of NP Completeness

HOMEWORK ASSIGNMENTS
Assignment 1
Assignment 2
Assignment 3
Assignment 4
Assignment 5
Assignment 6
Assignment 7 (programming assignment)
Assignment 8 (Due: April 12th in class)
Assignment 9 (programming assignment) (Due: April 26th in class). NOTICE THE EXTENDED DUE DATE!

ADDITIONAL MATERIALS
Basic Math Review
Some Review Questions on Growth of Functions (to be discussed in the lab)
Materials for the lab of Feb 22nd. Solutions to these questions will be discussed
Practice questions for the midterm exam. Solutions to these questions will be discussed in the lab on March 1st.
Materials for the lab on March 22nd. Solutions to these questions will be discussed in the lab.