|
CSI2114: Data Structures (Spring 2006)
Professor Dr. Amiya Nayak Teaching Assistants Shantanu Das Natasha Jindal Abolfazl Keshtkar Lectures Wednesday:
Friday: Labs & Lab Materials Lab:
Wednesday Click here for lab materials. Prerequisites CSI 1101 or CSI 1102 or ITI 1221. Course Objectives Present in a systematic fashion the most commonly used data structures, emphasizing their abstract properties. Review implementation methods for those data structures. Discuss typical algorithms that operate on each kind of data structures, and analyze their performances. Textbook Michael Goodrich, Roberto Tamassia, Data Structures and Algorithms in Java (3rd ed.), Wiley, 2004. The textbook has a web site at http://ww3.java3.datastructures.net/ with on-line demos and hints for exercises. Other resources
D.E. Knuth, Sorting and Searching , vol. 3 of The Art of Computer Programming, Addison Wesley, 1973. T.A. Standish: Data Structures in Java. Addison Wesley. S. Sahni: Data Structures, Algorithms, and Applications in Java. Marking Scheme
You
must have at least 50% of mark in the midterm and the final exam, combined,
to pass the course. The
final exam will be comprehensive, with the emphasis on the material not
covered in the midterm exam. A
student who has an official medical certificate (from the University
Health Services) for being absent in the day of the midterm will have the
final exam mark scaled up accordingly. Course Topics Introduction to abstract data types. Trees, binary search trees, balanced trees. Searching. Sorting. Simple examples of complexity analysis. Graphs, simple graph algorithms: depth-first and breadth-first search, minimum spanning tree, shortest path. (Lab work will be done in the Java programming language). Course Materials Week 1: Introduction (pdf file); Stacks, Queues and Deques (pdf file) Week 3: Vectors, Lists, Sequences (pdf file); Priority Queues (pdf file) Assignments Assignment #1 Term Mark
Final Exam: Friday, July 21 in CBY
B012 from 13:00 to 16:00
|
||||||
|
|