public Node <TData> Delete() { Node <TData> node = null; if (LeftNode != null) { node = LeftNode; node.DeleteRight(); return(node); } if (RightNode != null) { node = RightNode; node.DeleteLeft(); return(node); } return(null); }