An expression tree is a binary tree in which all leaves are
operands (constants or variables), and the non-leaf nodes are binary operators (+,-,/,*,^). Implement this tree to model polynomials with the basic methods of the tree including the following:
a) A function that calculates the first derivative of a polynomial
b) Evaluate a polynomial for a given value of
x.