Wenn die Laufzeit eines Algorithmus ein komplizierter Ausdruck ist, ist der Algorithmus selbst sehr oft auch kompliziert und unpraktisch. Jeder der Kubikwurzel- und -Faktoren in der asymptotischen Laufzeit führt dazu, dass der Algorithmus komplexer wird und die Laufzeit konstant bleibt.
Haben wir eindrucksvolle Beispiele, bei denen diese Faustregel versagt?
Es ist natürlich leicht, Beispiele für Algorithmen zu finden , die sehr schwierig zu implementieren sind, obwohl sie eine sehr einfache Worst-Case-Laufzeit haben. Aber was ist mit der Umkehrung?
Haben wir Beispiele sehr einfacher und praktischer deterministischer Algorithmen, die einfach zu implementieren sind, jedoch einen sehr komplizierten Ausdruck als asymptotische Laufzeit im ungünstigsten Fall haben?
Bitte beachten Sie die Schlüsselwörter "deterministisch" und "Worst-Case"; Die Analyse einfacher randomisierter Algorithmen führt ziemlich leicht zu komplizierten Ausdrücken.
Was "kompliziert" ist, ist natürlich Geschmackssache. Wie auch immer, ich würde es vorziehen, einen Ausdruck zu sehen, der viel zu hässlich ist, um ihn in den Titel Ihrer Arbeit zu schreiben. Und ich würde eine komplizierte Funktion eines natürlichen Parameters (Eingabegröße, Anzahl der Knoten usw.) vorziehen .
PS. Ich dachte, ich würde das nicht zu einer "Big-List-Frage" machen und nicht zu CW. Ich würde gerne ein einziges hervorragendes Beispiel finden (falls es überhaupt existiert). Schreiben Sie daher eine andere Antwort nur, wenn Sie der Meinung sind, dass sie "besser" ist als alle bisherigen Antworten.