Syllabus - Fall 2017

CS 4130/5130 - Advanced Data Structures and Algorithms


Instructor

Dr. Badri Adhikari - adhikarib at [umsl.edu]

Office

312 ESH

Office Hours

MW 6 – 8 PM (and by appointment)

Class meets

Mon and Wed, 8:20 PM – 9:35 PM in 218 SSB

Credit Units

3

Prerequisites

CS 3130 (or equivalent)

Textbook

CLRS 3rd Edition (ISBN 978-0-262-03384-8 or ISBN 978-0-262-53305-8)


Course Description: This course covers analysis of time and space complexity of iterative and recursive algorithms, design of data structures for efficient performance, mathematical modeling, dynamic programming, divide and conquer strategies, greedy algorithms, a collection of graph algorithms, linear and integer mathematical programming, and NP-Completeness.


Evaluation Criteria:


Grading:


Exams:


Programming projects:


Late submissions:


Attendance:


Tentative Schedule for Fall 2017: (will be updated as the course progresses)

Class #

Date

Module - Topic

1

Aug 21

Motivation, Analyzing algorithms, Growth of functions, Divide and conquer slides

2

Aug 23

Dynamic programming - Rod cutting problem slides

3

Aug 28

Dynamic programming - Longest common subsequence problem

4

Aug 30

Greedy algorithms - Activity selection problem slides

-

-

Labor Day

5

Sep 06

Greedy algorithms - Huffman coding

6

Sep 11

Revision, Discussion of Practice Set 1 & Practice Set 2, Project Guidelines

7

Sep 13

Exam 1

8

Sep 18

DS for disjoint sets - Linked-list & Forest representations, and heuristics slides

9

Sep 20

Elementary graph algorithms - Graph representations and Breadth-first search slides

10

Sep 25

Elementary graph algorithms - Depth-first search and topological sort

11

Sep 27

Minimum spanning trees - Greedy property slides

12

Oct 02

Minimum spanning trees - Kruskal’s and Prim’s algorithms

13

Oct 04

Single-source shortest paths slides

14

Oct 09

Maximum flow slides

15

Oct 11

Upside-down class (programming assignment) - Practice Set 3

16

Oct 16

Maximum flow

17

Oct 18

Project proposal presentations

18

Oct 23

Revision - Practice Sets 4 & 5

19

Oct 25

Exam 2

20

Oct 30

Maximum flow

21

Nov 01

Maximum flow

22

Nov 06

Amortized analysis - Aggregate method slides

23

Nov 08

Linear programming slides

24

Nov 13

Linear programming

25

Nov 15

The simulated annealing algorithm slides

-

-

Thanksgiving holiday

27

Nov 27

Mid-term term presentation

28

Nov 29

NP-Completeness

29

Dec 04

Revision - Practice Sets 6

30

Dec 06

Exam 3

31

Dec 11

Project Presentations
Some projects: MAZE-A-TRON (report),


Upside-down classes:


Personal electronics during lectures: Electronic devices may be used during class lectures as long as they do not present a distraction to yourself or others.


Academic Integrity:


Access, Disability, Communication:


Mandatory Reporting: