University of Maryland Asian Division

CMIS 240: Data Structures and Abstraction



TERM V

June 6 - July 18, 1998

Saturdays, 0900-1600



Syllabus



INSTRUCTOR: BJ Gleason

Phone: 723-4300

E-Mail: bjgleas@aol.com

Website: http://soback.kornet.nm.kr/~bjgleas

Office Hours: Before and After Class, by Appointment



TEXTBOOK: Lambert, Naps, Understanding Program Design and Data Structures with C++, West Publishing, 1996



SOFTWARE: Turbo C++ by Borland



DESCRIPTION: (Prerequisite, CMIS 140 or equivalent, or permission of the instructor.) This course provides a detailed discussion and application of Data Structures and Abstract Data Types. Various algorithms will be analyzed for efficiency and tradeoffs between speed and size. The principles of modular software development will be demonstrated through use of C++ objects. The course will not present full coverage of object oriented programming but will introduce the concepts as they pertain to abstract data types.



INTERNET ACCESS: Students will be expected to have e-mail and Internet access. Some homework assignments will require extensive use of these resources.



OBJECTIVES: Upon successful completion of this course the student will:

Understand the Use of ADTs and objects in Modular Software Development

Understand List, Stack, Queue, and Tree ADTs

Be Able to Critically Analyze Alternate Solutions to Programming Problems

Have Reinforced Basic C++ Programming Skills



EVALUATION:

Midterm Exam: 25%

Final Exam: 25%

Project: 20%

Assignments: 20%

Class Participation 10%



POLICIES, PROCEDURES AND GRADES: IAW with the University of Maryland, University Catalog, Asian Division, and the Student Handbook (current editions). These cover essential information such as attendance, grading, make-up work and plagiarism.



All assignments are to be turned in at the beginning of class. Late assignments will not be accepted. In the event of bonafide duty-related absence on the due date, arrangements should be made with the instructor in advance.



MISCELLANEOUS: Students will be required to use a computer and associated software to complete course assignments. Software unique to the course will be introduced in the first one or two class periods. However, students will be expected to make a determined effort to learn to use course unique programs on their own. CMIS courses are concept, not software oriented.



NOTES: Students may purchase an academic priced copy of Borland's Turbo C++, for DOS. This is the software that will be used in the course, and provided in the UofM computer labs. Available from College Park Bookstore at 301/314-7887.





Week Topics Chapter
1 Review of C/C++

Algorithm Analysis

1
2 Data Abstraction 2
3 Software Engineering, Linked Lists 3, 4
4 Stacks and Queues

Midterm

5
5 Recursion 6
6 Trees and Graphs 7
7 More Sorting / Searching 8, 9
8 Final Exam



Schedule is subject to change, however all subjects will be covered.