COT 5993: Introduction to Algorithms -- Spring 05
Course Homepage
Office: ECS 389; Phone: (305) 348-3748;
Office Hours: TBA
e-mail: giri@cs.fiu.edu
ANNOUNCEMENTS
- Apr 22 Homework #4, problem 41: This problem is
incorrect. I will have an update on it as soon as I know
more. For now, ignore the hint given below.
- Apr 20: Hint for Homework #4, problem 41: Try and
answer the following question first: "If there are a
distinct paths from vertex i to k and b
distinct paths from k to j, then how many
distinct paths are there from i to j that
go through vertex k?"
- Apr 10: For the programming assignment, if the measured
times are too low to be measured, then count the number of comparisons
instead.
- Apr 03: Homework #4 is now ready. It is due Apr 19.
- Apr 03: The data file is now ready. The file contains 2048
real numbers. I suggest that you have your program read them in as real
vaues and then round them off to the nearest integer.
- Mar 29: Programming Assignment #1 is now ready. It is due Apr 19.
- Mar 03: Homework #3 is now ready. It is due Mar 29.
- Feb 10: Homework #2 is now ready. It is due Feb 22.
- Jan 30: Homework #1 is due Feb 3, not Feb 2 as
mentioned before.
- Jan 20: Homework #1 is now ready. It is due Feb 2. First read the homework guidelines
and collaboration policies (see below).
- Jan 04: Visit this web page regularly for
announcements. New ones will be marked as until newer ones
arrive. Answers to select "Frequently Asked Questions" (FAQs) about
your assignments can be found by clicking here: FAQs.
HANDOUTS AND HOMEWORK ASSIGNMENTS
One must learn by doing the
thing; for though you think you know it, you have no certainty until
you try. Sophocles
LECTURES (pdf format)
- Lecture #22 [pdf]
[NP-Completeness]
- Mar 3: Lecture #16 [pdf]
[Graph Algorithms]
- Mar 1: Lecture #15 [pdf]
[Dynamic Programming Algorithms]
- Feb 24: Lecture #14 [pdf]
[Number-Theoretic Algorithms]
- Feb 22: Lecture #13 [pdf]
[Dynamic Programming Algorithms]
- Feb 17: Lecture #12 [pdf]
[Greedy Algorithms]
- Feb 10, 15: Lecture #10, #11 [pdf]
[Binary Search Trees; Red-Black Trees; Augmented Data Structures]
- Feb 3, 8: Lecture #8, #9 [pdf]
[k-Selection; Binary Search Trees]
- Feb 1: Lecture #7 [pdf]
[CountingSort; k-Selection]
- Jan 27: Lecture #6 [pdf]
[HeapSort, BucketSort, RadixSort]
- Jan 25: Lecture #5 [pdf]
[QuickSort, HeapSort, BucketSort, RadixSort]
- Jan 13, 18, 20: Lecture #2, #3, #4 (Updated)
[pdf] [SelectionSort, InsertionSort,
ShellSort, BubbleSort, ShakerSort, MergeSort]
- Jan 11: Lecture #1 [pdf]
[Introduction, Doubling Search, Horner's Rule, Celebrity Problem]
USEFUL LINKS
TEXT:
Standard Text
"Introduction to Algorithms", (Second Edition) by Cormen, Leiserson, Rivest, Stein
[ISBN 0-07-013151-1]
Other Useful Books
- Computer Algorithms S. Baase and A. van Gelder, 3rd
Edition, Addison Wesley, 2000. ISBN: 0-201-61244-5.
- Computers and Intractability: A Guide to the Theory of
NP-Completeness, by M. Garey and D.S. Johnson, 1979
(Publishers: W. H Freeman and Company).
- Approximation Algorithms for NP-hard Problems, by Dorit Hochbaum,
PWS Publishing Co., 1997.
- Computational Geometry, by de Berg, van Kreveld,
Overmars, Schwazkopf
- Randomized Algorithms, by Motwani and
Raghavan
- Algorithm on Strings, Trees, and Sequences, by Gusfield
- Handbook of Discrete and Computational
Geometry, by Goodman and O'Rourke
- Combinatorial Optimization, by
Papadimitriou and Steiglitz
- Algorithms in C++ (Parts 1-4; Part 5), by Sedgewick
- Data Structures, Algorithms, and Applications in Java, by Sahni.
SYLLABUS
- Sorting and Order Statistics
- Balanced Trees
- Augmented Data Structures
- Dynamic Programming & Greedy Algorithms
- Graphs & Graph Algorithms
- String Algorithms
- Geometric Algorithms
- NP-Completeness
- Lower Bound Arguments
- Experimental Algorithmics
OLD ANNOUNCEMENTS
Last modified: Tue Apr 26 17:59:57 EDT 2005