Documentos de Académico
Documentos de Profesional
Documentos de Cultura
MATERIA
ESTRUCTURA DE DATOS
TEMA
Aplicaciones de la PILA
PROFESOR
Ing. MIGUEL ANGEL SNCHE HERNNDE
Introduccin
Nosotros sabemos que los operadores matemticos son los siguientes ( +,-,*,/) y los operandos
son los que realizamos dicas operaciones! "#isten di$erentes maneras para representar las
operaciones las cuales son%
& + ' inter$i(a
+&' pre$i(a
&'- pos$i(a
"n la siguiente tabla se muestra unos e(emplos de cmo representar dicas operaciones en
inter$i(a, pre$i(a y pos$i(a!
Inter$i(a )re$i(a )os$i(a
&+' +&' &'+
(&+')*(*-+) *+&'-*+ &'+*+-*
&-'/(**++") -&/'**++" &'*++*/-
*omo e,aluar una e#presin pos$i(a ocupando una pila
"l siguiente algoritmo nos da una idea como poder e,aluar una e#presin pos$i(a
)ila-pila ,ac.a/
0ile (no sea $in de cadena)1
s.mbolo-siguiente carcter de entrada
i$(s.mbolo es un operando)
a2adir)ila(pila,simbolo)
else
operando3-sacar)ila()/
operando4-sacar)ila()/
,alor-resultado de aplicar el s.mbolo a perando3 y operando 4
a2adir)ila(pila,,alor)
end i$
5
Ejercicio: implementar el algoritmo anterior ocupando la clase general de pila que se realizo en
la prctica anterior.
*on,ersin de una e#presin inter$i(a a post$i(a
&ora se muestra otro bosque(o para con,ertir una e#presin inter$i(a a pos$i(a
pila-pila ,ac.a
6ile(no se $in de la cadena)1
s.mbolo-siguiente carcter de entrada
i$(s.mbolo es un operando )
agregar s.mbolo a la cadena
else
6ile(no es ,acia pila 77 precedencia(,er)ila(pila),simbolo))1
simbolo&rriba-e#traer)ila(pila)/
agregar simbolo&rriba a la cadena
5
a2adir(pila,s.mbolo)
end i$
5
/* 8peradores restantes*/
0ile(no se $in pila)1
simbolo&rriba-e#traer)ila(pila)
agregar simbolo&rriba a la cadena
5
Nota% el m9todo de procedencia e,al:a la procedencia de los operadores por e(emplo
procedencia(*,+) es true, pero procedencia(+,*) es $alsa, procedencia(+,+) es true! "ste algoritmo
no toma los par9ntesis!
Ejercicio a: Implementa el algoritmo anterior
Ejercicio b: Que tienes que agregar dems al algoritmo anterior para que tambin pueda ocupar
los parntesis.