15.09.2014 Aufrufe

Effizienz von Algorithmen - Technische Fakultät - Universität Bielefeld

Effizienz von Algorithmen - Technische Fakultät - Universität Bielefeld

Effizienz von Algorithmen - Technische Fakultät - Universität Bielefeld

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

<strong>Effizienz</strong> <strong>von</strong> <strong>Algorithmen</strong> Asymptotische <strong>Effizienz</strong>-Analyse Exkurs Beispiel zur Effizienanalyse Ausn<br />

Diese Regel für if_then_else gilt in allen Programmiersprachen.<br />

Ohne sie könnte man keine terminierende Rekursion programmieren:<br />

f (x) = if_then_else(x ≤ 0, 42, 2 + f (x − 1))<br />

Innermost-Strategie führt zu endloser Berechnung des else-Falles.<br />

Auch wenn die Bedingung gerne in “mix-fix” Schreibweise<br />

daherkommt:<br />

f (x) = if x ≤ 0 then 42 else 2 + f (x − 1)<br />

sollte man nicht verkennen, dass es sich dabei um eine dreistellige<br />

Funktion handelt, die NICHT innermost berechnent wird.<br />

117 / 130<br />

<strong>Effizienz</strong> <strong>von</strong> <strong>Algorithmen</strong> Asymptotische <strong>Effizienz</strong>-Analyse Exkurs Beispiel zur Effizienanalyse Ausn<br />

Eigenschaften der Strategien<br />

1 Ob eine Rechnung terminiert, hängt i.A. <strong>von</strong> der Strategie ab.<br />

2 Wenn zwei verschiedene Strategien, angewandt auf die gleiche<br />

Formel, terminieren, liefern sie das gleiche Ergebnis.<br />

3 Im Fall (2) kann sich der Rechenaufwand stark unterscheiden.<br />

4 Wenn für eine Formel F irgendeine Strategie terminiert, dann<br />

terminiert für F auch “leftmost outermost”.<br />

5 “leftmost innermost” terminiert seltener als “leftmost outermost”.<br />

118 / 130

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!