稀疏矩陣
在矩陣中,若數值為0的元素數目遠遠多於非0元素的數目時,則稱該矩陣為稀疏矩陣
#include #include#include using namespace std;
templatestruct triple
};templateclass sparsematrix
}} }
~sparsematrix()
void display()
else
//cout++index;
} } return ts;
}private:
vector> _matrixs;
t _invalid;//非法值
int _m;//行
int _n;//列
};void test(), ,
, }; int arr2[4][4]=
, , ,
}; sparsematrixsm((int*)arr,4,4,0);
cout<<"原始矩陣"cout<<"轉置矩陣"cout<<"原始矩陣"cout<<"轉置矩陣"<
元素以主對角線
為對稱軸對應相等的矩陣
#include #includeusing namespace std;
templateclass symmetricmatrix
}} }
t& access(size_t i,size_t j)
void print()
測試函式
#include "sparsematrix.h"
#include "symmetricmatrix.h"
int main()
資料結構 稀疏矩陣
稀疏矩陣 矩陣中有效資料的個數遠遠小於無效資料的個數,則可以稱之為稀疏矩陣 如果還像以前那樣將每個稀疏矩陣的資料都儲存起來,則會造成記憶體的很大程度的浪費,所以應用特別的儲存方式。稀疏矩陣的壓縮儲存 使用 三元組儲存每乙個有效資料,三元組按原矩陣中的位置,以行優先順序先後順序依次存放。矩陣的轉置 將...
資料結構 稀疏矩陣
簡單的說,設矩陣amn中有s個非零元素,若s遠遠小於矩陣元素的總數,則稱a為稀疏矩陣。s與m x n的比稱為矩陣的稀疏因子。當用陣列儲存稀疏矩陣中的元素時,僅有少部分的空間被利用,造成空間的浪費,為了節省儲存空間,可以採用一種壓縮的儲存方法來表示稀疏矩陣。由於非零元素的分布一般是沒有規律的,因此在儲...
資料結構 稀疏矩陣
稀疏矩陣時矩陣中的一種特殊情況,其非零元素的個數遠遠小於零元素個數。1.順序儲存 非零元素三元組的結構定義 struct triple 其中row代表行號,col代表列號,val用來儲存元素值 稀疏矩陣的順序儲存型別定義 struct smatrix m,n,t域分別用來儲存稀疏矩陣的行數,列數,非...