稀疏矩陣構成的廣義表

2021-07-12 07:19:24 字數 903 閱讀 6700

題目要求:

假設n n的稀疏矩陣a採用三元組表示,設計乙個程式exp6-4.cpp實現如下功能:

(1)生成如下兩個稀疏矩陣的三元組a和b;

(2)輸出a轉置矩陣的三元組;

(3)輸出a+b的三元組;

(4)輸出a b的三元組。

輸入**:

#include#include#includeusing namespace std;

#define m 4//稀疏矩陣行數

#define n 4//稀疏矩陣列數

#define maxsize 100//稀疏矩陣中非零元素最多的個數

int z[m][n];

typedef int elemtype;

typedef struct

tupnode;

typedef struct

tsmatrix; //三元組順序表定義

/*對乙個二維稀疏矩陣建立其三元組表示

*/void creatmat(tsmatrix &t,elemtype a[m][n])

t.data[k].r=i;

t.data[k].c=j;

t.data[k].d=x;

t.nums++;

}return true;}/*

矩陣轉置

*/void trantat(tsmatrix t,tsmatrix &tb)

else//a元素的列號等於b元素的列號

i++;

j++;}}

else if(a.data[i].r

執行截圖:

陣列與廣義表 稀疏矩陣的壓縮儲存 三元組做儲存結構

head.h includeusing namespace std define max matrixsize 20 define elemtype int class triple 三元組類 class tsmatrix 矩陣類 class matrix 矩陣類封裝了有關矩陣的操作 void ma...

稀疏矩陣的壓縮矩陣

如果乙個矩陣中的大部分元素為零,稱為稀疏矩陣。對於稀疏矩陣而言,時間儲存的資料項很少,如果在程式中使用傳統的二維陣列方式來儲存,則十分浪費儲存空間,且矩陣越大,資源浪費越嚴重。為提記憶體空間利用率,可利用三項式 3 tuple 的資料結構,即把乙個非零項用 i,j,item value 來表示。其中...

稀疏矩陣的壓縮

稀疏矩陣的特點 m n矩陣,矩陣中有效值的個數遠遠小於無效值的個數,並且這些資料的分布沒有規律。例如下面的矩陣 稀疏矩陣的壓縮儲存 壓縮矩陣值儲存極少數的有效資料。使用三元組來儲存每乙個資料,三元組資料按照矩陣中的位置,以行優先順序依次存放。則上述矩陣的儲存結構為 三元組結構 三元組的定義 temp...