稀疏矩陣三元組的快速轉置

2021-09-02 07:17:50 字數 1007 閱讀 1902

#include #include using namespace std;

#define maxsize 1024

#define elemtype int

#define status int

// 三元組

typedef struct tripletriple;

// 由三元組組成的表

typedef struct tsmatrixtsmatrix;

// 快速轉置矩陣

void fasttransposematrix(tsmatrix& m, tsmatrix& n)

; int copt[100] = ;

// 遍歷m,得到每一列有幾個元素

for (int i = 1; i <= m.tu; ++i)

// col:對應元素所在的列值;

int col;

// 第一列第乙個元素明顯為1 所以置copt[1]為1

copt[1] = 1;

// 從第二列開始,找到每列第乙個元素所對應的位置

for (col = 2; col <= m.mu; ++col)

// pos 暫時存放元素轉置後對應的位置

int pos;

// 遍歷m

for (int tmp = 1; tmp <= m.tu; ++tmp)

}return;

}int main()

fasttransposematrix(m, n);

cout << "after fast transpose the matrix's row is " << m.nu << ", col is " << m.mu << ", amount is " << m.tu << endl;

cout << "the value is " << endl;

for (int j = 1; j <= n.tu; ++j)

return 0;

}

三元組稀疏矩陣快速轉置

稀疏矩陣是只儲存非零元的行值 列值 元素值 data 0 來儲存矩陣的行數 列數 非零元個數 struct position struct list void quick transpose list l,list s 記錄每一列第乙個非零元的位置 int col num l.data 0 col ...

三元組矩陣轉置

include include define maxsize 100 非零元的最大個數 define elentype int define status int 返回值型別 define ok 1 define error 0 define overflow 1 稀疏矩陣的三元組儲存結構 type...

五 1 2 稀疏矩陣快速轉置 三元組儲存

乙個稀疏矩陣m用三元組表示,設計高效率的演算法將矩陣m轉置後得到矩陣n 1.我們先對矩陣m的順序表進行遍歷,用陣列num記錄m矩陣每一列非零元素分別有多少個,這也就是逆矩陣n每一行的非零元素有多少個.2.利用逆矩陣n每一行的非零元素有多少個這個資訊,我們就可以求出逆n矩陣中每一行非零元素在順序表中的...