SE250:lab-7:tlou006
1
Inserting the elements in the order: d b f a c e g produces the tree
a b c d (*) e f g
As explained during class; this was done by inserting the median first (in the sequence abcdefg), followed by the upper and lower medians. No other orders for this particular sequence will produce a balanced tree. I think
2
Taking the balanced tree
a b c d (*) e f g
then rotating left produces
a b c d (*) e f g
Skewing the sequence
a (*) b c d e f g
then performing the left rotation produces
a (*) b c d e f g
The order appears to be the same: a b c d e f g
Only the root nodes are different, this is expected because skewing the sequences sets the root at a while the balanced tree has the root at d, the median. Perhapes I misunderstood the question?
3
I looked up the HTTB and got a good idea of how rotations work.
Starting with a right skew
a (*) b c d e f g
Ending with a left skew
a b c d e f g (*)
I understood that a left skew will start with the highest value as the root and move down decreasing. At first I inserted the values in the order of g f e d c b a to produce a left skew, then i realised it wasn't what the question was asking.
i used the commands
>rotate left
>root
>rotate left
>root
>rotate left
>root
>rotate left
>root
>rotate left
>root
>rotate left
>root
4
Starting with a balanced tree
a b c d (*) e f g
>right
>right
>right
>right
a b c d e (*) f g
> rotate left
a b c d e (*) f g
>root
>rotate left
>root
>rotate left
>root
>rotate left
a b c (*) d e f g
>rotate right
a b c d (*) e f g