[2016 Fall]
COT-5407-U01: Introduction to Algorithms

[SYLLABUS]


Conference: ECS 235, MW 3:30-4:45PM

Instructor: Dr. Wei Zeng

Office: ECS 357
Hours: F 10:00AM-12:00PM, 2:00-4:00PM
Homepage: http://www.cis.fiu.edu/~wzeng/

TA: Musfiqur Sazal
Office: ECS 266
Hours: W 4:45PM-6:00PM
Email: msaza001@fiu.edu


Announcements

08/22: Syllabus has been posted to Moodle!


Schedule (Tentative)

Notes: More course materials can be found in Moodle.

08/22: Lecture#01: Introduction, Insertion Sort

08/24: Lecture#02: Divide-and-Conquer, Merge Sort, Asymptotic Notation

08/29: Lecture#03: Recurrence, The Master Theorem

08/31: Lecture#04: Probability Analysis & Randomized Algorithms      |     Hw 1    

09/05: Holiday

09/07: Lecture#05: Heap Sort

09/12: Lecture#06: Heap Sort (cont.) & Quick Sort

09/14: Lecture#07: Quick Sort (cont.), Lower Bound for Comparison Sort 

09/19: Lecture#08: Sorting in Linear Time

09/21: Lecture#09: Medians and Order Statistics     |     Hw 2

09/26: Lecture#10: Elementary Data Structures

09/28: Lecture#11: Red Black Trees

10/03: Lecture#12: Hash Tables

10/05: Lecture#13: Open Addressing

10/10: Lecture#14: Dynamic Order Statistics

10/12: Lecture#15: Augmenting Data Structures     |     Hw 3

10/17: Lecture#16: Review for Midterm     |     Qz 1 (take-home)

10/19: TA Session - Hw 1 & Hw 2

10/24: TA Session - Hw 3 & Qz 1

10/26: Lecture#17: Elementary Graph Algorithms, Breadth-First Search

10/31: Lecture#18: Depth First Search

11/02: Midterm

11/07: Lecture#19: Minimum Spanning Tree

11/09: Lecture#20: Single Source Shortest Path      |     Hw 4 

11/14: Lecture#21: Amortized Analysis

11/16: Lecture#22: Dynamic Programming I

11/21: Lecture#23: Dynamic Programming II

11/23: Lecture#24: Greedy Algorithms | Lecture#25: Final Review    |Hw 5, Qz 2 (take-home)

11/28: TA Session - Midterm &  Hw 4

11/30: TA Session - Hw 5 & Qz 2
12/05: Lecture 26: NP-Completeness (optional)

12/07: Final Exam (tentative, please refer to the assigned date in the system)


Topics

Asymptotic Notations, Recurrence, Divide-and-Conquer, Randomized Algorithms

Sorting and Order Statistics

Data Structures: Trees, Hash Tables

Graph Algorithms

Dynamic Programming, Greedy Algorithms, Amortized Analysis

NP-Completeness (optional)


Catalog Decription

Design of advanced data structures and algorithms; advanced analysis techniques; lower bound proofs; advanced algorithms for graph, string, geometric, and numerical problems; approximation algorithms; randomized and online algorithms. (3 credits)


Textbook

[CLRS] Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein. Introduction to Algorithms, Third Edition, MIT Press. 2009.


Prerequisites

SCIS Graduate Standing, esp., Data Structure, Computer Programming, Algebra, Probability Analysis


Type

Required for MSCS 

Elective for MSIT, MSTN, and Ph.D. students 


Course Objectives

Students will learn both the elementary and advanced techniques for efficient algorithm design along with asymptotic analysis of running time or cost and intractability proof for real problems.


Reference

[KT] Kleinberg and Tardos. Algorithm Design, Addison-Wesley. 2005.


Grading Policy

Homework (problem sets): 50%    

Quiz 1 (take-home): 0%

Miterm Exam (in-class): 10%

Quiz 2 (take-home): 0%  

Final Exam (in-class): 35%  

Participation: 5% 

Notes: All the homework assignment, submission, and grading will be done through Moodle.

1. The due date for homework will be announced with homework assignment. Late homework will generally not be accepted. If there are extenuating circumstances, you should make prior arrangements with TA.

2. The answers to problem set are required to be uploaded to Moodle. TA will evaluate them and post grades there. 

3. All the homework should be finished independently.

4. If writing your problem set by hand, it is a good idea to copy over your answers and scan it for uploading which will make your work neater and give you a chance to correct bugs.

5. Each problem must be written up separately. Mark the top of each sheet with the following: (1) your name, (2) the question number, and (3) the names of any people you worked with on the problem, or ¡°Collaborators: none¡± if you solved the problem completely alone.

6. No collaboration whatsoever is permitted on in-class quiz or exam.

7. Plagiarism and other dishonest behavior cannot be tolerated in any academic environment that prides itself on individual accomplishment.


University Policies and Regulations

1. Regulations concerning Incomplete Grades: http://academic.fiu.edu/polman/sec16web.htm 

2. For academic misconduct, sexual harassment, religious holydays, and information on services for students with disabilities, please see:

http://www.fiu.edu/provost/polman/sec2/sec2web2-44.htm

http://www.fiu.edu/~eop/EOPSexH.pdf

http://www.fiu.edu/~provost/polman/sec19web.html

©2016 Wei Zeng        http://www.cs.fiu.edu/~wzeng        Last Updated: 09/08/2016