Data Structures

605.202

Calvin Johnson, Ph.D.


Course description

Syllabus

Instructor

Textbook and references

Policies

Assignments

Handouts

Java resources

Questionnaire

Feedback

Submit assignments

Query grades


JHU Part-Time Programs in Engineering and Applied Science


Part-Time Programs in Engineering and Applied Science, Johns Hopkins University

Data Structures

605.202
Course Description 

This course investigates abstract data types (ADTs), recursion, algorithms for searching and sorting, and basic algorithm analysis. The ADTs to be covered include lists, stacks, queues, priority queues, trees, sets, and dictionaries. The emphasis is on the trade-offs associated with implementing alternative data structures for these ADTs. There will be four or five substantial programming assignments.

This course is offered in the summer, fall, and spring semesters.

Prerequisites 

Differential and integral calculus and Java, C++, C, or Pascal programming.

Course Section, Location, and Time 

  • Section 71: Wednesdays, 6:30-10:00 PM, Montgomery County Center, MCC Room 203.
  • Also refer to the Course Schedule.
 

Data Structures and Java

This course aims to introduce the student to fundamental concepts of computer science. In contrast to many Java courses, the following topics are de-emphasized in this course:

  • GUIs
  • Applets
  • Network programming
  • Client-server computing
The following topics are emphasized
  • Abstract data types
  • Analysis of algorithms
  • Encapsulation
  • Use of Java Interfaces and Exceptions.
The topics covered in this course provide a foundation for more advanced courses in computer science. Many of the concepts will be presented in an essentially language-neutral manner. The Java language enforces object-oriented programming and elegantly complements the purpose of the course