Un árbol general es aquella estructura de datos en árbol en la que guardas información en los nodos sin seguir una regla especial, simplemente, por ejemplo, siguiendo la estructura de un XML o algo parecido. Para pasar de un árbol general a binario propongo la siguiente solución:
1. Recorrer el árbol general (como tu quieras, inroden, etc)
2. Guardar los datos de los nodos en una lista
3. Ordenar la lista
4. Tomar el dato de la mita de la lista como raíz del árbol binario y eliminarlo de la lista
5. Recorrer la lista e ir insertando los nodos de acuerdo con las reglas del árbol binario: en el subárbol de la izquierda de la raíz los valores menores, en el subárbol de la derecha de la raíz los valores mayores.
De esta manera es muy probable que el árbol binario te quede totalmente balanceado, evitando el riesgo de que el árbol te quede como una lista simple.