動態稀疏矩陣對應的三元組的輸出,以及逆置和賦值演算法

2021-08-04 13:49:56 字數 841 閱讀 9115

#include

#include

#include

#include

#define maxsize 100

using namespace std;

typedef int datatype;

///稀疏矩陣三元組結構定義如下

typedef struct

triple;

///乙個稀疏矩陣的順序儲存型別定義如下

typedef struct

sparsematrix;

void create(datatype ***a,int m,int n)///初始化,兩個***表示二維陣列

{*a=new int*[m]; ///初始乙個m行n列的矩陣

for (int i=0;i>a[i][j];

coutt.cols)

return false;

while(kt.elem[k].row) ///先查詢行

k++;

while(kt.elem[k].col)///查列

k++;

if(i==t.elem[k].row&&j==t.elem[k].col)///判斷條件,如果存在這樣的乙個元素

t.elem[k].val=e;///那麼把這個元素賦值給它

else///如果不存在的話

稀疏矩陣的三元組順序儲存

該資料結構的操作主要是陣列的相加 和相乘,這兩個演算法全是我個人所寫,絕無參考,經測試應該少有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是矩陣行列數,就可以用三元組表示稀疏矩陣,可以節省空間。稀疏矩陣的壓縮儲存採用三元組的方法實現。其儲存規則是 每乙個非零元素佔一行,每行中包含非零元素所在的行號 列號 非零元素的數值。為完整描述稀疏矩陣,一般在第一...

稀疏矩陣 三元組表示的矩陣相加減

設有採用三元組順序表儲存的兩個稀疏矩陣m和n,試著編寫乙個演算法,實現m和n相乘 1.標頭檔案 triseqmatrix.h 該資料夾中包含著三元稀疏矩陣的建立 初始化 轉置 銷毀等操作 pragma once include include define maxsize 200 typedef s...