【发布时间】:2014-03-11 21:49:33
【问题描述】:
您好,我了解 CRS 稀疏矩阵的工作原理,但我有一个问题:如果一行为空(仅填充 0)会发生什么?比如让第 5 行为空,row_ptr(5) 应该包含什么?
【问题讨论】:
标签: matrix sparse-matrix
您好,我了解 CRS 稀疏矩阵的工作原理,但我有一个问题:如果一行为空(仅填充 0)会发生什么?比如让第 5 行为空,row_ptr(5) 应该包含什么?
【问题讨论】:
标签: matrix sparse-matrix
行指针值将被复制,即行指针看起来像[1, 3, 3, 5]。如果您总是想到行指针会告诉您在您正在查看的索引所在的行之前有多少非零条目,这很有意义。
顺便说一句:更有趣的是如果矩阵的最后一列为空会发生什么。 CRS 没有办法捕捉到这种情况,这意味着列数是一个附加信息,不能在 CRS 中使用的三个数组中编码。
【讨论】:
当最后一行为零时,我们也将值加倍。例如,最后一行编号为 10,则行索引数组包含 [...., 11, 11]
【讨论】: