Leonardo_Romor:

this amount of operations needs to be done one way or another


If the matrix is sparse, you don’t actually have to 
For example if you have a vector v of size n and a matrix A of size nxn.
If you know that A is diagonal. You can perform the vector matrix product by just storing a the diagonal of a. And performing an element-wise product of the n elements of v and a.
So you get the same results as v^T A but by doing n operations instead of n^2.
Does that make sense?