Toom-Cook-Algorithmus

Algorithmus zur Multiplikation zweier ganzer Zahlen
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 21. November 2005 um 10:25 Uhr durch Koethnig (Diskussion | Beiträge) (neu, einleitung). Sie kann sich erheblich von der aktuellen Version unterscheiden.
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)

Der Toom-Cook-Algorithmus ist ein effizienter Algorithmus zur Multiplikation zweier ganzer Zahlen. Er existiert in zwei Varianten. Die Variante mit fester Teilung besitzt eine Laufzeitkomplexität von , wobei eine feste Konstante ist, die nur von der Teilung aber nicht von der Eingabelänge abhängt. Die Variante mit variabler Teilung besitzt Laufzeitkomplexität .

Der Algorithmus von Toom und Cook ist die Verallgemeinerung des Karatsuba-Algorithmus und deutlich schneller als der naive Algorithmus nach der Schulmethode (bzw. der russischen Bauernmultiplikation im Binärsystem), der Laufzeitkomplexität besitzt. Für hinreichend große Zahlen ist er aber auch langsamer als der Schönhage-Strassen-Algorithmus, dessen Laufzeitkomplexität beträgt und der aus Sicht der Komplexitätstheorie als schnellster bekannter Algorithmus zur Multiplikation ganzer Zahlen gilt.