内容:
编写程序使用三元组表实现稀疏矩阵的按列转置操作。
步骤:
1.算法分析:
进行程序设计前,要对稀疏矩阵的一些知识进行必要的解释。设m*n矩阵中有t个非零元素且t<<m*n,这样的矩阵称为稀疏矩阵。可以看出,稀疏矩阵的非零元素是很少的,所以如果将稀疏矩阵进行常规存储会存在浪费大量内存的现象,而且在很多科学计算中,常常会遇到很多阶数很高的的大型稀疏矩阵。
正是因为上述原因,所以我们采用如下方法存储:将非零元素所在的行、列以及它的值构成一个三元组(i,j,v),然后再按某种规律存储这些三元组,存储后,还需要进行一些简单的操作,比如稀疏矩阵的转置,即引出了本问题。
例如下列矩阵:
改为三元组表为:
i |
j |
v |
|
1 |
1 |
1 |
15 |
2 |
1 |
4 |