#include
#include
#include
#include
#define maxsize 100
using namespace std;
typedef int datatype;///資料型別
typedef struct///稀疏矩陣中表示非0元素的三元組
triple;
typedef struct///乙個稀疏矩陣順序儲存型別
sparsematrix;
void create(datatype ***a,int m,int n)///初始化乙個二維陣列(三元組)
void value(sparsematrix &t,datatype e,int i,int j)///三元組的賦值
t.elem[k].row=i;
t.elem[k].col=j;
t.elem[k].val=e;
t.terms++;}}
bool add(sparsematrix a,sparsematrix b,sparsematrix &c,int m,int n)///兩個三元組相加
{datatype xa,xb,sum;
if(a.cols!=b.cols||a.rows!=b.rows)///當列或者行不相等時
用稀疏矩陣的三元組進行加法
演算法思想 在進行三元組的加法時 前提條件 用while迴圈,它的出口條件為 i,j 都小於他們分別所對應的三元組中元素的個數。滿足前提條件的情況下,分 3種情況 1.行列數相等 1 相加等於零,則直接跳過,i j 2 相加不為零,把相加後的數寫下來,i j 2.a的行大於b的行 1 寫下行數小的乙...
稀疏矩陣的三元組順序儲存
該資料結構的操作主要是陣列的相加 和相乘,這兩個演算法全是我個人所寫,絕無參考,經測試應該少有bug a.h include define false 0 define true 1 define ok 1 define error 0 define max size 100 typedef int...
稀疏矩陣的三元組儲存演算法
稀疏矩陣,是零元素較多的矩陣。一般只要滿足 t 1 3 m n,t是非零元素個數,mn是矩陣行列數,就可以用三元組表示稀疏矩陣,可以節省空間。稀疏矩陣的壓縮儲存採用三元組的方法實現。其儲存規則是 每乙個非零元素佔一行,每行中包含非零元素所在的行號 列號 非零元素的數值。為完整描述稀疏矩陣,一般在第一...