INFORMATION ON CS 6363.502.24S (Spring'2024)
Design and Analysis of Computer Algorithms
Tues & Thur: 5:30-6:45am, ECSS 2.203

Office Hours: Tuesday: 4:00-5:00pm
Location: ECSS 3.611

Teaching Assistants: Ke Su

Ke Su
TA Office Hours: Tuesday: 3:30-5:00pm
Location: ECSS 4.221
E-mail: Ke.Su@utdallas.edu

Textbook

T.H. Corman, C.E. Leiserson, R.L. Rivest and C. Stein:

Introduction to Algorithms (3rd edition)

MIT Press
ISBN 0-262-03293-7
Pages: 1180
Published: 2009

Lectures

Prerequisites: CS5333 and CS5343

Fundamental data structures: Stack, queue, list, tree.
Fundamental algorithms: Sorting, depth-first and breadth-first search.
Graphs: representation and topological sorting.
Running-time analysis of algorithms and order notation.

Lecture Notes
Remark: This is a partial book: Introduction to Combinatorial Optimization (By Du, Pardals,
Hu, Wu). There are 6 chapters which can serve the lecture notes of this course.

Part I Algorithms with Self-Reduction

(Unit 1) Sorting and Divide-and-Conquer
Lecture 1-1 Introduction (Chapter 1~4)
Lecture 1-2 Sorting (Chapter 6~7)
Lecture 1-3 Sorting and Selection(Chapter 8~9)
Lecture 1-4 Divide-and-Conquer (Chapter 4)
Recitation

Remark: At end of each unit, there is a recitation. The recitation is a lecture conducted
by TA or Instructor. In the recitation, problem solving methodology will be explained.
Especially, hints on homework problems could be provided.

(Unit 2) Shortest Path and Dynamic Programming
Lecture 2-1 Dynamic Programming (Chapter 15)
Lecture 2-2 Shortest Path (Chapter 24)
Lecture 2-3 Dijkstra's Algorithm (Chapter 24)
Lecture 2-4 Priority-Queue and Implementation of Dijkstra's Algorithm (Sec. 6.5)
Lecture 2-5 All Pairs Shortest Path (Chapter 25)
Recitation

(Unit 3) Minimum Spanning Tree and Greedy Algorithms
Lecture 3-1 Greedy Strategy (Sec. 16.1~3)
Lecture 3-2 Spanning Tree (Chapter 23)
Lecture 3-3 Matroid (Sec. 16.4~5)
Lecture 3-4 Self-Reducibility
Recitation

Review for the Midterm

Part II Incremental Method

(Unit 4) Network Flow and Incremental Method
Lecture 4-1 Ford-Fulkerson Method (Sec 26.1-2)
Lecture 4-2 Edmonds-Karp Algorithm (Sec 26.2)
Lecture 4-3 Maximum Matching (Sec. 26.3, Problem 26-6)
Lecture 4-4 Pre-flow Pushing (Sec. 26.4 )
Lecture 4-5 Minimum Cost Flow (Sec. 29.2)
Recitation

Part III Complexity and Approximation

(Unit 5) NP-hard Problems and Approximation Algorithms
Lecture 5-1 What's NP? (Chapter 34)
Lecture 5-2 NP-Complete Problems (Chapter 34)
Lecture 5-3 Vertex-Cover and Hamiltonian Cycle (Chapters 34 and 35)
Lecture 5-4 Partition and Knapsack (Chapters 34 and 35)
Lecture 5-5 3D-Matching and Logic Puzzles (Chapters 34 and 35)
Lecture 5-6 How to find a reduction? (Chapters 34 and 35)

Review Review for the Final Exam

(Unit *, optional) Linear Programming and Primal-Dual Method
Lectures 4-4 and 4-5 Linear Programming (Sections 29.1-3)
Lecture 5-3 Primal-Dual Method (Section 29.4)
Lecture 5-3 Label Correcting

Homeworks and Examinations

PLEASE NOTE: Copying posted solutions in web will be counted as CHEATING in homeworks and Exams.

There are 5 homeworks given in Elearning.

There are two exams, the midterm exam (March 9) and the final exam (May 4).
Both examinations are in classroom (open book, open notes, open laptop).

Grade: Totally, 40 points for all homeworks,
50 points for two exams. Each exam has 25 points.
10 points for attemdence of lectures
Grades will be assigned according to the total number of received points:
A >= 85 > B >= 70 > B- >= 60 > C >= 50.

Letter from the Head of CS Department (note: Will be applicable currently)

"I want to welcome you to the Spring 2018 semester and wish you a very happy 2018. May you all make a 4.0 this semester. However, to reach that 4.0 you have to make sure that you attend all your classes. So let me take this opportunity to remind you that the CS Department observes rules for attendance that are strictly enforced: 3 consecutive absences result in a 1 letter downgrade and 4 consecutive absences result in an F. It is especially important that you do not miss classes at the beginning of the semester."