Ryan, i have a little knowledge, but according to me, in the above code you are using recursive function as root=merge(root,newHeap.root), you are passing two constructors here, as you have only one...