appending terms we included tail reference in our linked list implementation for use by several of the polynomial arithmetic operations in order to perform fast append operations while the polynomial adt does not define an append operationwe want to provide helper method that implements this operation it will be used by other methods in the class for creating efficient operations the appendterm(helper method in lines - of listing accepts the degree and coefficient of polynomial termcreates new node to store the termand appends the node to the end of the list since we only store the non-zero terms in the linked listwe must ensure the supplied coefficient is not zero before creating and appending the new node polynomial addition the addition of two polynomials can be performed for our linked list implementation using simple brute-force methodas illustrated in the code segment belowclass polynomial def simple_addselfrhspoly )newpoly polynomial(if self degree(rhspoly degree(maxdegree self degree(else maxdegree rhspoly degree( maxdegree while > value self[irhspoly[iself _appendtermivalue + return newpoly the new polynomial is created by iterating over the two original polynomialsterm by termfrom the largest degree among the two polynomials down to degree the element access method is used to extract the coefficients of corresponding terms from each polynomialwhich are then addedresulting in term for the new polynomial since we iterate over the polynomials in decreasing degree orderwe can simply append the new term to the end of the linked list storing the new polynomial this implementation is rather simplebut it' not very efficient the element access methodwhich is used to obtain the coefficientsrequires (ntime assuming the largest degree between the two polynomials is nthe loop will be executed timesresulting in quadratic time in the worst case the polynomial addition operation can be greatly improved upon close examination it becomes clear this problem is similar to that of merging two sorted