Simplemente no se cual es el problema, porq ya comprobé q el codigo esta bueno, pero no tengo remota idea q es lo q falla...
Este es el mensaje q me marca
Código:
Y este el codigo...run: Exception in thread "main" java.lang.StackOverflowError at ted.ABB.Comparar(ABB.java:18) at ted.ABB.Comparar(ABB.java:18) repite el mismo mensaje cientos de veces...
Código PHP:
import java.io.*;
public class ABB {
String palabra;
ABB izq,der;
ABB(String d){
palabra = d;
izq=der=null;
}
ABB insertar(ABB t, String d){
if(t == null) return new ABB(d);
if(Comparar(d,palabra,0)) t.izq = insertar(t.izq,d);
else t.der = insertar(t.der,d);
return t;
}
boolean Comparar(String a, String b,int i){
if(a.charAt(i) == b.charAt(i)) return Comparar(a,b,i++);
if(a.charAt(i) < b.charAt(i)) return true;
return false;
}
void inOrden(ABB t){
if(t !=null){
inOrden(t.izq);
System.out.print(" "+t.palabra);
inOrden(t.der);
}
}
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new FileReader("" +
"C:\\Archivo.txt"));
ABB t = new ABB(br.readLine());
String p;
while((p = br.readLine())!=null){
t = t.insertar(t,p);
}
t.inOrden(t);
}
}
Espero q me puedan ayudar porq no se q será