Write a program that uses BirdSurvey to record the data from a recent bird survey. Use a loop to read bird names until done is entered. Display a report when finished.
Suppose that we would like to perform a bird survey to count the number of birds of each species in an area. Create a class BirdSurvey that is like one of the linked-list classes given in this chapter. (The linked list you use will affect what your new class can do, so give some thought to your choice.) Modify the inner node class to add room for a count.
BirdSurvey should have the following operations:
• add(bird)—adds the bird species bird to the end of the list, if it is not already there, and sets its count to 1; otherwise, adds 1 to the count for bird.
• getCount(bird)—returns the count associated with the species bird. If bird is not on the list, returns zero.
• getReport—displays the name and count for each bird species on the list.
The solution is loosely based on the generic version of the linked list given in Listing 12.12. The definition of node needs to be changed to include an extra piece of data (the count). The add method must be modified to do a search first and increment the count if the bird is already in the list. Notice that once a link is set, it never needs to be changed.
See the code in BirdSurvey.java.
You might also like to view...
To copy a tree, traverse it in __________ and add each data item visited to a new node.
a. inorder b. postorder c. reorder d. preorder
An object that is being thrown cannot be an anonymous object.
Answer the following statement true (T) or false (F)