Part-Time Programs in Engineering and Applied Science

605.202 Data Structures


Instructor: Lawrence M. Brown
Phone: (301) 227-4648
email: "lmb at apl dot jhu dot edu"
Class Time: Thursday 7:15-10:00 PM
Class Location: 9601 Medical Center Drive, Rockville, MD 20723-6099
Lab Location: Rm 316, 324, 325 (when available)
Text:
Data Structures and AlgorithmsMichael T. Goodrich and Roberto Tamassia, Data Structures and Algorithms in Java, John Wiley & Sons (1998), ISBN 0-471-19308-9. (required)

 

 

 

Data Structures in JavaThomas A. Standish, Data Structures in Java, Addison-Wesley (1997), ISBN 020130564X. (optional)

 

       

This is an introductory course on Data Structures and Algorithms. The implementation language used throughout the course is Java. Students with limited programming experience may decide to first take 605.201 Introduction to Java Programming.

This course focuses on developing abstract data types and applying mathematical techniques to quantitative the performance of algorithms. The student will develop a thorough understanding of recursion, implementation of stacks, queues, linked lists, and trees, as well as sorting and searching. The emphasis is on the trade-offs associated with the use of alternative data structures. Short exercises are integrated throughout the course to re-enforce the lectures and to develop algorithm analysis skills. Four substantial programming assignments, focused on applying data structures to problem solving, are required by the students.

NOTE: This course DOES NOT count toward the Master of Science in the Computer Science degree.