Tengo en java el código para el árbol binario de búsqueda para números pero quiero realizarlo para el abecedario y tengo problemas para volverlos carácter cuando capturo los nodos del árbol ya que solamente me toma números. Este es el código para insertar números. Quien me pueda ayudar se lo agradecería!!!
Cita: class NodoArbol{
NodoArbol li,ld;
int dato;
public NodoArbol(int d){
dato=d;
li=ld=null;
}
public synchronized void insertar(int d){
if(d<dato){
if(li==null){
li=new NodoArbol(d);
}
else{
li.insertar(d);
}
}
if(d>dato){
if(ld==null){
ld=new NodoArbol(d);
}
else{
ld.insertar(d);
}
}
}//fin insertar
public int retornadato(){
return(dato);
}//end retornadato
}
public class Arbol {
private NodoArbol raiz;
public Arbol() {
raiz=null;
}
public NodoArbol retornaraiz(){
return(raiz);
}
public synchronized void insertarNodo(int d){
if(raiz==null){
raiz=new NodoArbol(d);
//primero=raiz;
}
else{
raiz.insertar(d);
}
}//fin insertarNodo
y en la parte de capturar el nodo que me tocaria cambiar
public void actionPerformed(ActionEvent e)
{
if(e.getSource()==construye){
arbol=new Arbol();
int valor=0;
nodos=Integer.parseInt( JOptionPane.showInputDialog(null,"ingrese el numero de nodos para el arbol") );
for (int i=1;i<=nodos;i++){
dato=Integer.parseInt( JOptionPane.showInputDialog(null,"ingrese el dato a insertar en el arbol") );
arbol.insertarNodo(dato);
}
}