Question: C++ We are to implement 8 small additional functions and 2 helper functions to a singly linked list. 1. removeSecondNode340 deletes the second node in
C++ We are to implement 8 small additional functions and 2 helper functions to a singly linked list.
1. removeSecondNode340 deletes the second node in the Linked Bag.
2. addEnd340 inserts the new node at the end of the Linked Bag.
3. getCurrentSize340Iterative counts the number of nodes in the Linked Bag iteratively.
4. getCurrentSize340Recursive counts the number of nodes in the Linked Bag recursively. Use 1 helper function: getCurrentSize340RecursiveHelper.
5. IMMEDIATE RECURSION: getCurrentSize340RecursiveNoHelper counts the number of nodes in the Linked Bag recursively. This recursive function does not use any helper functions.
6. getFrequencyOf340Recursive recursively counts the number of times an entry appears in the Linked Bag. Use 1 helper function: getFrequencyOf340RecursiveHelper.
7. IMMEDIATE RECURSION: getFrequencyOf340RecursiveNoHelper recursively counts the number of times an entry appears in the Linked Bag. This recursive function does not use any helper functions.
8. removeRandom340 removes a random entry from the Linked Bag.
public:
bool removeSecondNode340();
bool addEnd340(const ItemType&);
int getCurrentSize340Iterative() const;
int getCurrentSize340Recursive() const;
int getCurrentSize340RecursiveNoHelper() const;
int getFrequencyOf340Recursive(const ItemType&) const;
int getFrequencyOf340RecursiveNoHelper(const ItemType&) const;
ItemType removeRandom340();
private:
int getCurrentSize340RecursiveHelper(Node
int getFrequencyOf340RecursiveHelper(Node
Example of it being used:
// 1. Create a bag and add initial nodes
cout << "--->>>>> Test 1 --->>>>>" << endl;
unique_ptr
// A mall vector of small objects to test the bag
vector
cout << " !add()... ";
vector
for (cItr = items.begin(); cItr != items.end(); cItr++) {
cout << *cItr << " ";
bool success = bag->add(*cItr);
if ( !success) {
cout << " !add() FAILED: " << *cItr << endl;
}
}
displayBag(bag);
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
