Arboles de Expresiones

Páginas: 3 (698 palabras) Publicado: 8 de abril de 2013
import java.util.Scanner;
public class Arbol_Expresiones {
private static class NodoArbol{
private final boolean hoja; // Es Hoja o interno??
private final char op;// Para un nodo interno, Operador
private double val; // Para una hoja o valor
private NodoArbol izq, // hijo izquierdo(sub espresion izquierda)der; // hijo derecho(sub espresion derecha)

//Constructor
private NodoArbol ( boolean hoja, char op, double val ){
this.hoja = hoja;
this.op = op;this.val = val;
this.izq = null;
this.der = null;
}

//Para los nodos hoja se muestra el valor; interno(operador)
public String toString(){ // Sesobrescrib Object.toString, debe ser publico.
return hoja ? Double.toString(val) : Character.toString(op) ;
}
}

NodoArbol raiz = null;

publicArbol_Expresiones( Scanner entrada ){
raiz = Construir(entrada);
}

/**
* Basado en una expresión delimitada por espacios en blanco prefijo, construir el
* Binario correspondiente árbol de expresión.* @ Param entrada ¿El escáner con la expresión
* @ Return referencia al árbol binario de expresión correspondiente
*/
private NodoArbol Construir( Scanner entrada ){
boolean hoj;String c;
double val;
NodoArbol nodo;

hoj = entrada.hasNextDouble();
if (hoj){
val = entrada.nextDouble();
nodo = new NodoArbol(hoj, '\0',val);
}
else
{
c = entrada.next();
nodo = new NodoArbol(hoj, c.charAt(0),0.0);
nodo.izq = Construir(entrada);
nodo.der =Construir(entrada);
}
return nodo;
}

/**
* Muestra el arbol de expresiones en posfijo.
* Todo el trabajo se hace en el método recursivo privado.
*/
public void muestraPosfijo(){...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Arboles de expresion
  • arboles con expresiones
  • arboles
  • El arbol
  • Arboles
  • Arbol
  • Arboles
  • Arbol

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS