09.05.2013 Views

Algoritmos y Programación en Pascal

Algoritmos y Programación en Pascal

Algoritmos y Programación en Pascal

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

386 Capítulo 17. Estructuras de datos recursivas<br />

1) Punto de partida<br />

2) Procesado de A<br />

A<br />

... ...<br />

3) Procesado de B<br />

H<br />

B<br />

D E<br />

4) Procesado de C<br />

C D E D E F G<br />

F G<br />

Figura 17.13.<br />

Árboles de expresiones aritméticas<br />

Mediante un árbol binario pued<strong>en</strong> expresarse las expresiones aritméticas<br />

habituales: suma, resta, producto y coci<strong>en</strong>te. En tal repres<strong>en</strong>tación cada nodo<br />

interior del árbol está etiquetado con el símbolo de una operación aritmética<br />

(cuyos argum<strong>en</strong>tos son los valores de las expresiones aritméticas que repres<strong>en</strong>tan<br />

sus subárboles hijos), y sólo las hojas están etiquetadas con valores numéricos.<br />

Es interesante observar la relación <strong>en</strong>tre los distintos tipos de recorrido de un<br />

árbol binario con las distintas notaciones para las expresiones aritméticas. Por<br />

ejemplo, la sigui<strong>en</strong>te expresión dada <strong>en</strong> notación habitual (esto es, <strong>en</strong> notación<br />

infija):<br />

3 <br />

∗ (4 + 5) − (7 : 2) : 6<br />

ti<strong>en</strong>e el árbol sintáctico de la figura 17.14.<br />

Si se recorre el árbol <strong>en</strong> inord<strong>en</strong> <strong>en</strong>tonces se obti<strong>en</strong>e la notación infija (habitual)<br />

de la expresión. Si se realiza un recorrido <strong>en</strong> postord<strong>en</strong> <strong>en</strong>tonces la ord<strong>en</strong>ación<br />

de los nodos es la sigui<strong>en</strong>te:<br />

3 4 5 + ∗ 7 2 : − 6 :<br />

que coincide con la expresión <strong>en</strong> notación postfija.<br />

F<br />

C<br />

H<br />

G<br />

H

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!