Answered step by step
Verified Expert Solution
Question
1 Approved Answer
Perform a Big (O) analysis of the overloaded + function for bag. Explain your analysis. bag operator +(const bag& b1, const bag& b2) { bag
Perform a Big (O) analysis of the overloaded + function for bag. Explain your analysis.
bag operator +(const bag& b1, const bag& b2)
{
bag answer;
answer += b1;
answer += b2;
return answer;
}
Given:
void bag::operator +=(const bag& addend)
// Library facilities used: cstdlib, node1.h
{
node *copy_head_ptr;
node *copy_tail_ptr;
if (addend.many_nodes > 0)
{
list_copy(addend.head_ptr, copy_head_ptr, copy_tail_ptr);
copy_tail_ptr->set_link( head_ptr );
head_ptr = copy_head_ptr;
many_nodes += addend.many_nodes;
}
}
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started