24.11.2013 Aufrufe

Teil 7: Bäume Beispiele (1)

Teil 7: Bäume Beispiele (1)

Teil 7: Bäume Beispiele (1)

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

PreOrder-Durchlauf für Binärbäume<br />

Algorithmus<br />

void preOrder(Node* p)<br />

{<br />

if (p != 0)<br />

{<br />

bearbeite(p->data);<br />

preOrder(p->left);<br />

preOrder(p->right);<br />

}<br />

}<br />

Beispiel<br />

*<br />

- c<br />

// Definition eines Baums:<br />

struct Node<br />

{<br />

int data;<br />

Node* left; // linkes Kind<br />

Node* right; // rechtes Kind<br />

};<br />

Node* root;<br />

…<br />

// Aufruf von preorder<br />

preOrder(root);<br />

Durchlaufreihenfolge:<br />

* - a b c<br />

a<br />

b<br />

O. Bittel; Sept. 2008 Programmiertechnik 2 - <strong>Bäume</strong> 7-15<br />

PostOrder-Durchlauf für Binärbäume<br />

Algorithmus<br />

void postOrder(Node* p)<br />

{<br />

if (p != 0)<br />

{<br />

postOrder(p->left);<br />

postOrder(p->right);<br />

bearbeite(p->data);<br />

}<br />

}<br />

Beispiel<br />

*<br />

- c<br />

Durchlaufreihenfolge:<br />

a b – c *<br />

(Entspricht der sog. Postfix-Notation für<br />

arithmetische Ausdrücke)<br />

a<br />

b<br />

O. Bittel; Sept. 2008 Programmiertechnik 2 - <strong>Bäume</strong> 7-16

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!