## Balance

No big news yet.  Still exploring though.  Recently I have been trying to code a balanced binary tree.  As for why; I am trying to solve ORDERS on SPOJ.  Doing a naive with arrays and linked list are too slow. However,  you can use the same approach with trees (balanced trees actually) and have your solution accepted.  I already know how to solve it in my head, the only hindrance is actually creating a balanced binary tree.  Well I think I’ll take a break from thinking about it for a while and move on to another problem.  Then come back when my skills have matured (lord knows they have a lot of that to do).

Apart from balanced binary trees I’ve also read about heaps.  The one I find most interesting is a variant called an interval tree.  Basically suppose node X is the interval [a,b] with a<b, then its two children are the intervals [a,c] and [c+1,b], where c is the midpoint of [a,b].  I came across this structure when reading a TopCoder tutorial on how to solve the Range Minimum/Maximum Query problem.  Though I have yet to actually practice using any of these methods, the tutorial did a good job of explaining so I don’t imagine it being all that hard.