### CS 608 - Algorithms and Computing Theory

• Instructor: Prof. Sung-Hyuk Cha
• Email: scha@pace.edu
• Tel: (212) 346-1253
• Office: 163 William St. 2nd floor rm 234
• Office Hours: T R 12:10pm - 2:10pm and T 4:30pm - 5:30pm

• CRN: 23284

• Meeting:

• Textbook: Data Structures and Algorithm Analysis in Java, by Clifford A. Shaffer, online textbook, 2012

• Recommended book: Introduction to Algorithms, Third Edition , Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein, The MIT Press, 2009

• Resource: Dictionary of Algorithms and Data Structures

• Course Description:
This course is an introduction to algorithms. Several algorithm design techniques, such as brute force, divide-and-conquer, dynamic programming, greedy algorithms, etc., will be illustrated with various problems in combinatorics, sorting, searching, graph theory, number theory, etc. Several data structures such as stacks, queues, heaps, hash tables, trees, etc. will be also introduced as means to solve problems. The asymptotic notations and the P/NP classification taxonomy shall be introduced as algorithm analysis frameworks.

• Prerequisites: CS 502 Minimum Grade of C

• Lecture Notes: can be accessed using the http://blackboard.pace.edu.
Blackboard Login Procedures for Registered Students are available here

• Tentative Schedule:

WeekTopic Chapters
1 (1/29) Ch 1 Introduction
Ch 3 Growth of functions & Asymptotic notations
Ch 2 Summations
2 (2/5) Ch 2 Recursion and Induction
3 (2/12) Ch 14 Divide and Conquer (Master Theorem)
Ch 2~3
4 (2/19) Ch 4 Elementary Data Structures (Stack & Queues)
5 (2/26) Ch 7 Heapsort & Sorting
6 (3/5) Ch 7 Sorting in Linear Time & Order Statistics
7 (3/12) Midterm
8 (3/19) Ch 16 Dynamic Programming
Combinatorics
9 (3/26) Spring Break
10(4/2) Ch 5 & Ch 10 & Ch 13 Binary Search Trees
11 (4/9) Ch 9 Hash Tables & Random Process
12 (4/16) Greedy Algorithms
Ch 11 Graph Algorithms
13 (4/23) Ch 17 NP-Completeness
14 (4/30) Presentation
15 (5/7) Final Exam

• Evaluation:
• Homeworks (25%): There will be weekly homework assignments.
• Project (25%): Report and presentation required.
• Midterm Exam (25%):
• Final Exam (25%):

• Course Policies
• All homeworks must be submitted at the beginning of the class. No late homework will be accepted.