Reference no: EM13841596
Programming Assignment 1:
- Build a Dictionary on top of a
- Bag built on top of an
- Array (not a vector) of objects àKVpairs (key/value pairs)
- Your dictionary should be able to hold at least 10 items.
- I have given you the templates for a
Bag (ADT)
Dictionary (ADT)
KV pair (implementation)
- Do not modify the templates or the KVPair class unless you talk to me first (I'll probably say no).
- Start by writing your Approach document first. I recommend you use an incremental approach
Build the Bag first and get it working
Then build the Dictionary using the Bag and get it working.
Build your program one function at a time.
- When you finish your Bag and then Dictionary show that it works with the following key/value types:
<int, string>
<string, int>
Think of a grocery bag
Bag fills up from bottom to top (like a stack)
Unlike a stack, a bag provides access to all of the contents, not just the items at the top
To find something in a bag you start looking from the top
See BagADT.h for Bag operations
Used for storing key/value records
Provides operations for
Storing,
Finding, and
Removing records from a collection
Since Find is the fundamental operation of a dictionary we need a key to search on
For the English dictionary the key is the word itself (Key) and the definition consists of the word and its definition (Value)
Dictionaries use a Key/Value pair; the key provides the "comparable object" used by Find
- In implementing your Dictionary you must use the available bag operations to implement your dictionary operations.
- Bag Operations
AddItem(E)
Remove(E)
RemoveTop(E)
Find(E)
EmptyBag()
+= operator overload (adds an item)
BagCapicity()
Dictionary Operations:
- Clear()
- Insert(E)
- Remove(E)
- RemoveAny(E)
- Find(E)
- Size()
- KVPair.h provides the template (this is an implementation and not an ADT) for creating a key/value pair used by both the Bag and Dictionary
- You are to use the following KV pair types for this assignment:
<int, string>
<string, int>
- Example dictionary test run
- For more information on Dictionaries and the use of KVPairs read section 4.4 of your text
- There you will find both details and usage examples.
Assignment 1 Comments
- You must implement the ADTs by inheriting them - you cannot modify them
classABag : public bagADT { }
classBDictionary : public dictionaryADT { }
Demonstrate one or more working bag operations to get any credit for this assignment and
You will not get credit, even if one or more ADT operations are implemented, if your implementation does not inherit the ADTs
Style Comments
- You do not have to separate declaration and implementation into header and .cpp files
- Put declaration and implementation both in the header file
- I expect to see
Self-documenting code
Good use of white space and indentation
Liberal use of comments
- Easy to read and understand
Attachment:- Programming Assignment 1.docx
Solution-p1mygrade
: a) Name this Solution "p1MyGrade" and this project "MyGrade01". b) Write a simple program that does the following:
|
Is swimmingpool co liable for martins actions
: Is Swimmingpool Co liable for Martin's actions? On what basis in law would this be the case? Can the company claim they are not liable for Martin because he has not followed instructions? Explain.
|
Examines the future direction for u.s
: Locate a recent article that examines the future direction for U.S. interest rates over the next year, provide an appropriate reference citation, and respond to the following: 1. Do you agree with the observations, conclusions, and projections pre..
|
Program that convert temperature in fahrenheit
: Write a program that will convert a temperature in Fahrenheit to Celsius and Kelvin. The temperature to convert should be captured from user input. The formulas for converting the temperatures are:
|
Programming assignment
: Build a Dictionary on top of a Bag built on top of an
|
Can fey successfully sue the racquet stringer
: Fey seeks your advice. Can she successfully sue the racquet stringer for the $20,000 which she has clearly lost as a result of his faulty work? Advise Fey.
|
Write about leaadership
: Write about leaadership
|
Perfectly price-discriminatithe decision to raise production
: the noncolluding oligopolist, there are two factors that affect the decision to raise production - Compared to perfectly competitive firms
|
Describe the steps in crime scene processing and analysis
: What is the crime scene processing versus crime scene analysis? Describe the steps in crime scene processing and analysis. What is the purpose of the initial scene survey? What are some types of scene searches and to what kinds of scene are they appl..
|