|
Course Number / Section: |
CIS 3223 / 001 and CIS 5501 / 001
(courses are cross-listed) |
|
Course Name: |
Algorithms and Data Structures and
Program and Data Structure |
|
Instructor: |
Paul Wolfgang |
|
Office: |
Wachman Hall, Room 1041. |
|
Email: |
|
|
Phone: |
215-204-5155. |
|
Course Web Page: |
|
|
Website for Complete Syllabus: |
|
|
Prerequisites: |
Grade of C or better in C+IN SC
2166 (0166) or Mathematics 3098 (W205) and C+IN SC 2168 (0068); Grade of C or
better in Mathematics 1042 (0086). |
|
Textbook(s): |
Dasgupta,
Papadimitriou, & Vazirani. ‘Algorithms’.
McGraw-Hill, 2008 |
|
Course Goals; |
Program style organization and
design with continued emphasis on the use of abstract data types and the object-oriented
design paradigm. Comparative analysis of algorithms and data structures. Data
structures include heaps, priority queues, binary and general trees, binary
search trees, AVL trees, B-trees, and graphs. Algorithms include heapsort, topological sort, breadth-first search,
depth-first search, shortest path algorithms, and Huffman coding. |
|
Topics Covered: |
Algorithm Analysis and
Correctness, Algorithms with Numbers, Divide-and-Conquer Algorithms,
Self-Adjusting Binary Search Trees, Graph Algorithms, Greedy Algorithms,
Dynamic Programming, Network Flow and Linear Programming, NP-Complete
Problems. |
|
Attendance Policy: |
Regular attendance is encouraged.
Some material will be presented during lectures that is not included in the
Text. Homework assignments will not be accepted late. If you are absent
on the day an assignment is due, you must make arrangements to have it
delivered before class starts. |