稀疏矩陣是只儲存非零元的行值、列值、元素值
data[0]來儲存矩陣的行數、列數、非零元個數
struct position
;struct list
;
void quick_transpose (list l, list &s)
;//記錄每一列第乙個非零元的位置
int col_num[l.data[0]
.col +1]
=;//記錄每一列非零元個數
//陣列大小加1是為了對應自然行列值
//預設初始化,每個值都賦值為0,但是acm平台貌似是不能編譯過去,需要用迴圈賦值
col_pos[1]
=1; s.data[0]
.row = l.data[0]
.col;
s.data[0]
.col = l.data[0]
.row;
s.data[0]
.value = l.data[0]
.value;
for(
int i =
1; i <= l.data[0]
.value; i++
)for
(int i =
2; i <= l.data[0]
.col; i++
)for
(int i =
1; i <=l.data[0]
.value; i++
)}
資料結構實驗之陣列三:快速轉置
#include
#include
using
namespace std;
const
int max =50;
struct position
;struct list
;void create (list &l,
int m,
int n,
int t)
}void quick_transpose (list l, list &s)
//陣列大小加1是為了對應自然行列值
col_pos[1]
=1; s.data[0]
.row = l.data[0]
.col;
s.data[0]
.col = l.data[0]
.row;
s.data[0]
.value = l.data[0]
.value;
for(
int i =
1; i <= l.data[0]
.value; i++
)for
(int i =
2; i <= l.data[0]
.col; i++
)for
(int i =
1; i <=l.data[0]
.value; i++)}
void print (list l)
}int
main()
return0;
}
稀疏矩陣三元組的快速轉置
include include using namespace std define maxsize 1024 define elemtype int define status int 三元組 typedef struct tripletriple 由三元組組成的表 typedef struct ...
三元組矩陣轉置
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矩陣中每一行非零元素在順序表中的...