Addition of a new element to Binary tree

Have a recursive function in which we pass the root of the tree and see
if the value to be added is smaller or bigger than the root, and
depending on result, we go to left or right of the tree, assuming the
left (or right) is not null. If null, just use new to create a memory
location, put the value, and use the left reference of the root to link
to this new memory