Your program will read a 1990 census bureau data file that contains a list of
male names along with the percentage of the male population that has the
specified first name. You will read a similar list of female names into a
second list. Your program should produce a third list of names that appear in
both lists along with the difference in percentages. The output of your program
will be the third list.
Here are some suggested steps for completing this assignment:
- Create a Person class (along with appropriate constructor,
toString(), etc.) to hold a name and a frequency.
- Copy IntNode.java to PersonNode.java and modify
- Copy IntList.java to PersonList.java and modify
it so you can perform list operations on Person objects.
- Write a method that given the name of a census file will read
the file and build a list from it. (NOTE: I put this method in
- Build two lists (one for boys and one for girls).
- Traverse one list and search for its names in the other list.
Build a new list that has the names that are in common. The
frequency of of the name should be the difference in the
frequencies of the two lists.
FYI: An example of a name that appears in both lists is QUINN. If you
subtract the percentage value (frequency) of its usage as a boy
name from that of its usage as a girl name you get -0.004 (which
indicates it is slightly more common as a boy's name).
The assignment will be graded according to the following criteria:
Your program should be completely working and should follow all of the
programming conventions named in class and explained in
http://josephus.hsutx.edu/classes/all/javaconventions/ (including the use
of comments that conform to the JavaDoc guidelines).
The instructor will grade your work based on what you have pushed to the hosted
homework repository you have shared. For all assignments the program is due
before the beginning of class on the due date. Repositories that show a commit
time after that time will be graded as late.