I need to create a program written in Java. It needs to create a fully unbalanced BST. It must have 26 levels. It must demonstrate the insertion of elements into the BST. It must also show the balance operation to convert it to a fully balanced binary search tree. It can either be numeric (1-26) or alphabetic (A-Z) data values used to build the binary search tree.
All together it must input the values and build the tree. it must then build the best tree for the best height. and then output the new balanced binary search tree.