Due Date: Sunday, October 18, 2009.
Objective: The goal of this assignment is to practice linked lists.
Background: The main advantage of linked lists is that, in contrast to
arrays, they allow the user to easily handle lists of arbitrary size, without a
need to set up a prior bound. Let us use this ability to help our Computer Science
department design a list of UTEP CS faculty with their research topics.
Assignment: The elements of your list are objects representing professors.
Each such object should contains three fields:
- the professor's name,
- the professor's research area, and
- the professor's email.
For simplicity, let us assume that each professor has only one research area.
Write methods:
- for starting such a list,
- for inserting a new professor,
- for deleting
a professor who decided to leave, and
- for searching a professor who has a given
research area.
In the main program, test your methods by filling in information about at least six
actual UTEP CS professors. To test deletion, add Ada Lovelace, then delete her.
For extra credit: add:
- a method that writes down all this information into
a file (one line per field, thus three lines per professor), and
- a method that reads the information from a
file into a linked list.