Professional Documents
Culture Documents
GUIA PRACTICA N 4
OBJETIVO: Manejar los conceptos bsicos e implementacin de la estructuras de datos Pilas y cola, y su
aplicacin.
ETD PILAS
ETD COLA
struct tipoNodo {
struct tnodo {
int dato;
int dato;
ALGUNAS FUNCIONES
Pg. 1
pNodo A = Final;
if (pila_vacia(cima)) {
pNodo Nuevo;
exit(EXIT_FAILURE);
if (Nuevo)
{ Nuevo->dato = x;
Nodo= cima;
Nuevo->Sig = NULL;
Nuevo->Ant= NULL;
if (cima!=NULL)
cima->Ant=NULL;
{ Frente = Nuevo;
Final=Nuevo; }
delete Nodo;
}
else
{ Final-> Sig = Nuevo;
Nuevo-> Ant= Final;
Final= Nuevo }
}}
cima = NULL;
}
void apilar(tipo_elemento x, Pila &
cima)
{ pNodo Nuevo;
Nuevo=new(tipoNodo);
if (Nuevo)
{ Nuevo->dato=x;
Nuevo->Sig=NULL;
Nuevo -> Ant= NULL
if(cima==NULL)
cima=Nuevo;
else
{Nuevo->Sig=cima;
cima-> Ant= Nuevo;
cima=Nuevo; }
}
}
}
return(Frente-> dato);}
DESARROLLO DE LA PRCTICA.Se requiere implementar un evaluador de expresiones matemticas en formato postfijo. Admite slo operadores aritmticos (+,-,*,/,^). El funcionamiento est basado en dos pasos; el primero consiste en convertir
la expresin infija a notacin postfija para luego proceder a la evaluacin de esta ltima.
Pg. 2
La expresin infija debe estar balanceada o escrita correctamente por lo cual es necesario revisar si por
cada parntesis de apertura ( en la expresin se tiene su correspondiente parntesis que cierra ). Para
el almacenamiento de la expresin infija utilice la estructura de datos cola y para la expresin Postfija resultante se requiere utilizar una lista enlazada.
Nota: El orden de prioridades de operaciones es
Alta prioridad
Baja prioridad
Pg. 3