Balancing Algorithms
The algorithm for the “brute force”
approach is:
balance(data_type data [], int first, int last)
if (first <= last) {
   int middle = (first + last)/2;
  insert(data[middle]);
  balance(data, first, middle-1);
  balance(data, middle+1, last);