What This Document Is
This document details a programming assignment for an introductory Data Structures course (CS 111) at West Virginia University. It outlines a project requiring students to demonstrate their understanding of linked lists and Abstract Data Types (ADTs) through the development of a cruise booking system. The assignment focuses on practical application of data structure principles to solve a real-world-inspired problem. It’s designed to be completed individually and submitted electronically.
Why This Document Matters
This assignment is crucial for students learning to implement and utilize fundamental data structures. Successfully completing this project will solidify your understanding of linked lists – specifically doubly linked and singly linked lists – and how they can be combined to manage complex data relationships. It’s particularly valuable for those preparing for more advanced coursework in software development, algorithms, and database management. This assignment will be most helpful when you are actively working on the coding portion of the course and need a clear understanding of the project requirements and expected functionality.
Common Limitations or Challenges
This document provides a comprehensive assignment description, but it does *not* include pre-written code solutions or step-by-step coding instructions. It assumes a foundational understanding of Java (or a similar language) and the concepts of ADTs and linked lists as taught in the course. It also doesn’t offer debugging assistance or detailed explanations of specific syntax. Students will need to rely on their understanding of the course material and independent problem-solving skills.
What This Document Provides
* A detailed description of the cruise booking system to be implemented.
* Specific requirements for the Cruise and Passenger ADTs, including the data members each should contain.
* A list of required functionalities for the main program, presented as interactive commands.
* Instructions for handling input data from an external file.
* Details on how cruise data should be organized and sorted within the linked list.
* Requirements for implementing the `Comparable` interface for cruise objects.
* Specific actions required when adding, canceling, and searching for cruises and passengers.