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
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
<strong>Effizienz</strong> <strong>von</strong> <strong>Algorithmen</strong> Asymptotische <strong>Effizienz</strong>-Analyse Exkurs Beispiel zur Effizienanalyse Ausn<br />
Nun wird ein ausgeglichener Baum aufgebaut, an dessen Blättern die<br />
Läufe stehen. Er hat also den Typ Tree[a] statt Tree a.<br />
Trotzdem können wir die schon bekannte Θ(n) build-Funktion<br />
einsetzen – für diese ist n nun die Anzahl der Läufe!<br />
101 / 130<br />
<strong>Effizienz</strong> <strong>von</strong> <strong>Algorithmen</strong> Asymptotische <strong>Effizienz</strong>-Analyse Exkurs Beispiel zur Effizienanalyse Ausn<br />
Das Programm smoothSort:<br />
smsort :: Ord a => [a] -> [a]<br />
smsort = mergeRuns . build’ . runs<br />
mergeRuns :: Ord a => Tree [a] -> [a]<br />
mergeRuns (Leaf x) = x<br />
mergeRuns (Br l r) = merge (mergeRuns l) (mergeRuns r)<br />
102 / 130