Fundamental Algorithms
CSCI-GA 1170
Wednesday 6:00-8:20
Room WWH 101
Professor Ernest Davis
Reaching Me
- phone: (212) 998-3123
- office: 329 Warren Weaver Hall
- Office hours: Tuesday 10-12 or by appointment.
- Email:
Recitation
The recitation will meet Thursday, 6:00-7:00, WWH 101. Attendance at the
recitation is strongly recommended. In any case, be sure that you
register for the recitation (section 002) as well as the class
(section 001).
The recitation instructor and grader for the course is Aditya Dhananjay
aditya AtSign cs.nyu.edu.
He will hold office hours Monday 7-8 in room 412.
The grader for the course is Wen Xing wx277 AtSign nyu.edu.
Prerequisites: None.
Required Textbook: Either of the following:
An Introduction to Algorithms: Their Methods and Madness, by Alan
Siegel. The book is available at the NYU Copy Center (LaGuardia Place
between Bleecker and 3rd, next to Citibank) for $50.00. It comes
in two volumes; be sure to get both.
Introduction to Algorithms by Cormen, Leiserson, Rivest, and Stein,
3rd edn. Available at the book store.
(Previous editions are also fine, if you can get them used
cheap.)
Topics
- Algorithmic analysis:
Correctness. Worst-case running time asymptotic
analysis. Big Oh notation. CLRS, chaps. 1-3.
- Divide-and-conquer Recurrence equations.
CLRS chap. 4.
- Sorting algorithms:
N^{2} sorts, Heapsort, Mergesort, Quicksort,
Radix sort. Lower bound. CLRS chaps. 6-8.
- Sets: Lists. Hash tables. Binary trees. B-trees. CLRS
chap. 10, 11, 12, 18.
- Directed graphs: Implementation. Depth-first search. DAGS.
Shortest paths. CLRS chaps. 22,24,25.
- Undirected graphs: Minimum spanning tree. Union-find algorithm.
CLRS chaps. 21, 23.
- Algorithmic techniques: Dynamic programming.
Greedy algorithms. CLRS, Chaps. 15, 16.
- State space search/Implicit graphs: . Iterative deepening.
Class notes.
Requirements
Weekly problem sets (50%)
Final exam (50%).
Problem sets should be submitted in hard copy in class
or by email to Wen by the start of
class on the day they are due. For email submissions, I prefer PDF,
but plain-text or Word are OK. They will be
discussed at the recitation
the next day, so they cannot be accepted late.
Class email list
You should be automatically subscribed to
the class email web page.
Assignments
Problem Set 1 Due June 5.
Problem Set 2 Due June 12.
Problem Set 3 Due June 19.
Problem Set 4 Due June 26.
Problem Set 5 Due July 3.
Problem Set 6 Due July 10.
Problem Set 7 Due July 17.
Problem Set 8 Due July 24.
Problem Set 9 Due July 31.
Notes
HeapSort
MergeSort
QuickSort
Linear Time Sorts
Binary Search Trees
2-3 Trees
B-Trees
Using Hashing for Large Sets of Large Objects
Final exam
The final exam will be Wednesday August 14.
Notes on the Final Exam
Sample Final Exam
Solutions to Sample Final Exam
Additional practice problems can be found in the department's
collection of Core Exams
Cheating
You may discuss any of the assignments with your classmates (or anyone else)
but all work for all assignments must be
entirely your own. Any sharing or copying of assignments will be
considered cheating. By the rules of the Graduate School of Arts and Science,
I am required to report any incidents of cheating to the department.
My policy is that the first incident of cheating will result in the
student getting a grade of F for the course.
The second incident, by GSAS rules, will result
in expulsion from the University.