Дмитрий Гуща Asked:2020-05-30 00:40:07 +0000 UTC2020-05-30 00:40:07 +0000 UTC 2020-05-30 00:40:07 +0000 UTC 帮助理解问题的本质 772 任务说明如下: 使用表示为稀疏列表的向量和矩阵来实现工作。实现加法、标量乘法、矩阵乘向量、矩阵乘法、矩阵转置等操作。 什么是稀疏列表,你需要知道什么来实现这个任务? 我将用 C++ 编写 c++ 1 个回答 Voted Best Answer jokerbot 2020-07-19T22:13:14Z2020-07-19T22:13:14Z 稀疏数据结构是只存储有效数据的结构。如果设置了一个 1000x1000 的逻辑矩阵,那么如果它没有被填充,那么内存中就没有任何物理内容。如果您访问未设置的元素,则将返回默认值。对于标量乘法,您不能遍历所有单元格,而只能将已打开的单元格相乘。这当然更难实现,但正因为如此,节省了内存并实现了速度的提高。有关该主题的更多信息:wiki2.org/en/Sparse_array 这意味着您不需要为矩阵启动一个二维 N * N 数组,而是制作一个非零元素列表。
稀疏数据结构是只存储有效数据的结构。如果设置了一个 1000x1000 的逻辑矩阵,那么如果它没有被填充,那么内存中就没有任何物理内容。如果您访问未设置的元素,则将返回默认值。对于标量乘法,您不能遍历所有单元格,而只能将已打开的单元格相乘。这当然更难实现,但正因为如此,节省了内存并实现了速度的提高。有关该主题的更多信息:wiki2.org/en/Sparse_array
这意味着您不需要为矩阵启动一个二维 N * N 数组,而是制作一个非零元素列表。