Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
您好,我了解 CRS 稀疏矩阵的工作原理,但我有一个问题:如果一行为空(仅填充 0)会发生什么?例如让第 5 行为空,row_ptr(5) 应该包含什么?
行指针值将被复制,即行指针看起来像[1, 3, 3, 5]. 如果您总是想到行指针告诉您在您正在查看的索引的行之前有多少非零条目,这很有意义。
[1, 3, 3, 5]
顺便说一句:更有趣的是如果矩阵的最后一列为空会发生什么。CRS 无法捕捉到这种情况,这意味着列数是无法在 CRS 中使用的三个数组中编码的附加信息。
当最后一行为零时,我们也将值加倍。例如,最后一行编号为 10,则行索引数组包含 [...., 11, 11]