Algoritmo Strassen per l'analisi della complessità della moltiplicazione di matrici


8

Vedo ovunque che l'equazione ricorsiva per la complessità di Strassen alg è: Questo non è così chiaro per me. Il parametro dovrebbe essere la dimensione dell'input, ma sembra che qui ci sia una dimensione di una matrice mentre la dimensione dell'input è in realtà . Inoltre, ogni matrice dell'input è divisa in 4 sotto-matrici quindi sembra che l'equazione ricorsiva dovrebbe essere

T(n)=7T(n2)+O(n2).
nn2
T(n)=7T(n4)+O(n).

Risposte:


13

È vero che il parametro solito indica la dimensione dell'input, ma non è sempre così. Per la moltiplicazione della matrice quadrata, indica il numero di righe (o colonne). Per i grafici, indica spesso il numero di vertici e il numero di spigoli. Per gli algoritmi sulle funzioni booleane, indica il numero di input, sebbene la tabella di verità stessa abbia dimensioni . Ci sono molti altri esempi.nnnmn2n


5

È tornato alle dimensioni della matrice. Supponiamo che la matrice originale sian×n. Quindi prenderemo in considerazioneT(n) come calcolo di due matrici con dimensione di n×n. Quando dividiamo la matrice originale in 4 parti, la dimensione di ogni parte èn2×n2. Quindi, il costo di calcolo della moltiplicazione di due matrici con questa dimensione èT(n2).


0

La complessità temporale si basa spesso sulla dimensione dell'input, ma non è un requisito assoluto. In questo caso, per la moltiplicazione delle matrici nxn, sembra molto naturale contare il numero di operazioni basate su n, non sulla dimensione del problema nx n.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.