Algorithm 稀疏矩阵乘法复杂性

Algorithm 稀疏矩阵乘法复杂性,algorithm,matrix,complexity-theory,sparse-matrix,eigen,Algorithm,Matrix,Complexity Theory,Sparse Matrix,Eigen,我想表达两种算法的计算复杂性:稀疏矩阵稀疏向量乘法和稀疏矩阵稀疏矩阵乘法,使用CSR表示在Eigen或Cusparse中实现 我知道这取决于几个参数,特别是每个元素中非零值的数量 但是,我找不到详细说明此类算法复杂性并使用O()表示法的出版物。假设将A*B与AAm*k矩阵乘以A每列非零,和Bak*n矩阵,每列B非零。然后,操作(*和+)的数量为: 因为对于B的n列中的每一列,我们必须循环通过A的B列,其中B的对应元素为非零,然后乘以累加相应的A非零。如果正确实现,如在Eigen或Cusparse

我想表达两种算法的计算复杂性:稀疏矩阵稀疏向量乘法和稀疏矩阵稀疏矩阵乘法,使用CSR表示在Eigen或Cusparse中实现

我知道这取决于几个参数,特别是每个元素中非零值的数量


但是,我找不到详细说明此类算法复杂性并使用O()表示法的出版物。

假设将
A*B
A
A
m*k
矩阵乘以
A
每列非零,和
B
a
k*n
矩阵,每列
B
非零。然后,操作(*和+)的数量为:

因为对于
B
n
列中的每一列,我们必须循环通过
A
B
列,其中
B
的对应元素为非零,然后乘以累加相应的
A
非零。如果正确实现,如在Eigen或Cusparse中,我们有三个嵌套循环,分别是
n
b
a
迭代,因此复杂性是
O(a*b*n)

2*n*b*a