15,940,550 members
See more:
Hello everyone!

Here I am with another doubt this time considering data structures.

I was given a homework sorta.

To create a binary search tree with the following values.

5, 4, 3 ,1, 17, 8, 11

I'd post a picture but i don't know how so.. the old fashioned way

The given solution is :

root node is 5
root's left-child is 4
it's left child is 3
and it's left child is 1

then the right subtree

root's right-child is 17
it's left child is 8
and it's rigth child is 11

written other way :

left subtree(5->4, 4->3, 3->1 ) right subtree (5->17, 17->8, 8->11)

My Solution differs a bit...

i made it that way :

left subtree(5->4, 4->3, 3->1) right subtree (5->8, 8->11, 11->17)

My question is :

Since both look as being a valid binary trees I can't really see the difference in
these solutions, therefore, my question.. is my solution also a valid solution to
the given problem.

What I have tried:

I can see why is the given solution all right but I don't see a valid reason why mine would be wrong,

Is this thinking correct?
Posted
Updated 28-Mar-16 0:59am

## Solution 1

Both trees are perfectly legal.
Simply, the given solution insert values in the order values are given.
In you solution, the 17 is inserted after all other values.
The given solution comes from 5, 4, 3 ,1, 17, 8, 11.
Your solution comes from 5, 4, 3 ,1, 8, 11, 17.
Are you allowed to reorder values.

Member 12371341 28-Mar-16 7:03am
I'm glad i's fine, regarding the reordering..
No bounds were written.
Guess I better do them the way they were given, but my solution at least from my point of view seemed a little bit more natural.

Thanks once again!
Patrice T 28-Mar-16 7:21am
If you want a better solution, try to reorder values to balance the tree.
Member 12371341 28-Mar-16 7:27am
Isn't my solution also a valid and balanced binary tree?

Given the definition : A tree is balanced if the distance from root to each node is equal or not greater then 1.

I think both of them look balanced.

I know we should try to balance them whenever we can since It allows faster times
at various operations on the tree.
Patrice T 28-Mar-16 7:38am
Build the tree in this order 5, 3, 4 ,1, 11, 8, 17
You will see what I mean.