Portál:Matematika/Odporúčaný článok/30

Zo stránky testwiki
Verzia z 00:06, 28. december 2016, ktorú vytvoril imported>Zajano (Zajano premiestnil stránku Portál:Matematika/Odporúčaný článok/30 2016 na Portál:Matematika/Odporúčaný článok/30: presun na univerzálnu šablónu)
(rozdiel) ← Staršia verzia | Aktuálna úprava (rozdiel) | Novšia verzia → (rozdiel)
Prejsť na navigáciu Prejsť na vyhľadávanie

Strassenov algoritmus, pomenovaný podľa Volkera Strassena, je algoritmus na násobenie matíc. Oproti štandardnému algoritmu násobiacemu matice priamo podľa vzťahu z definície, s časovou zložitosťou O(n3), má Strassenov algoritmus o niečo lepšiu asymptotickú časovú zložitosť O(Nlog27)O(N2.81), čo znamená, že pre veľké matice je Strassenov algoritmus rýchlejší, než štandardný algoritmus.

Strassenov algoritmus nie je asymptoticky optimálny. Najrýchlejší známy algoritmus násobenia matíc, tzv. Coppersmithov–Winogradov algoritmus, má časovú zložitosť približne O(n2.376), ale vzhľadom na veľmi veľký konštantný faktor sa táto výhoda prejaví len pre extrémne veľké matice.

Algoritmus

Nech A,Bmatice typu 2n×2n (v prípade, že matice nie sú typu 2n×2n, je možné doplniť chýbajúce riadky a stĺpce nulami) nad okruhom R. Označme C=AB súčin týchto matíc. Potom platí

Celý článok...