CIS
22C - Lab assignment 4
Background
In lab 3 we built a dictionary from a hashed table. In this lab we will build
another look up table with the binary search tree.
In data structures, a dictionary can also be called a map or an associative
array. It allows the user to enter a unique key in order to lookup a value
associated with that key.
Lab
Overview
Use
the BST ADT to build an associative array that serves as a contact list, to
look up people's contact information.
Details
Data
Record Class
-
Each data record has 3 fields: a name string, a phone string, and a web/email
address string.
The name and phone strings can contain spaces, ie. "Language
Arts"
- The default input file is called in.txt, and is a list of names and
associated contact information.
Each line has a name, a phone number, and a web address. All
fields are separated by comma.
- The data’s name is the key, the contact info (both the phone and the
web address) is the value
Contact
List Class
-
The contact list has an instance of the BST that is filled with data from the
input text file
- The BST is ordered by names
- The contact list has 4 public methods (and other private or public methods
as you see fit):
List
- ask the user for alphabetical order or
reverse alphabetical order
- print in the correct order all the names and
associated contact info, in column format
Delete:
- prompt for a name
- if the name is not found, print an error
message
- if the name is found, remove the data record
and print a confirmation message
Search:
- prompt for a name
- if the name is not found, print an error
message and list all the names in alphabetical order
- if the name is found, print the name and all
the contact info
Update:
- prompt for a name
- if the name is not found, print an error
message
- if the name is found, prompt the user for the
name, phone, and web address.
The user can enter new information
or hit Enter for no change
Sun | Mon | Tue | Wed | Thu | Fri | Sat |
---|---|---|---|---|---|---|
23 | 24 | 25 | 26 | 27 | 28 | 1 |
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 | 1 | 2 | 3 | 4 | 5 |
Get Free Quote!
296 Experts Online