1.對於對稱矩陣、上三角矩陣、下三角矩陣、帶狀矩陣等矩陣,可以用一維陣列來儲存有值的部分,分為行優先和列優先。
2.稀疏矩陣的表示
1) 三元組表示
template class
struct trituple{
int row,col;
t value;
3.稀疏矩陣的快速轉置演算法
實現統計好轉置後各行非零元素在轉置矩陣的三元組表中應存放的位置,形成兩個輔助陣列rowsize和rowstart,然後對稀疏矩陣的三元組表進行一趟掃瞄,依次檢測各三元組。(而不是像轉置普通矩陣那樣寫倆for迴圈)
與直接交換三元組的行列的那種方法相比的優勢:那種方法在交換完之後還要進行重新排序。而這種方法可以借助兩個輔助陣列達到排序的效果。
4.稀疏矩陣相加的演算法
同樣也不是倆for迴圈,而是比較各自的index。如果相同就相加,然後繼續,如果a的index
5.稀疏矩陣相乘的演算法
當順序取到a[i][k]時,根據列號k,去找b.smarray中所有行號為k的三元組。為了最快速度找到,也要用到上述兩個輔助陣列。
6.稀疏矩陣的正交鍊錶表示
《資料結構》複習之稀疏矩陣(矩陣轉置)
矩陣在資料結構中常用二維陣列 int a m n m為列的元素個數,n為行的元素個數 表示,這也是最簡單的表示方法。然而當矩陣中含有大量0元素時,也稱為稀疏矩陣,這樣的表示方法會浪費大量的儲存空間,為了節省儲存單元,最好只存非零元素。常用的儲存稀疏矩陣的方法有順序儲存和鏈式儲存兩種,這裡只介紹順序儲...
資料結構 稀疏矩陣
稀疏矩陣 矩陣中有效資料的個數遠遠小於無效資料的個數,則可以稱之為稀疏矩陣 如果還像以前那樣將每個稀疏矩陣的資料都儲存起來,則會造成記憶體的很大程度的浪費,所以應用特別的儲存方式。稀疏矩陣的壓縮儲存 使用 三元組儲存每乙個有效資料,三元組按原矩陣中的位置,以行優先順序先後順序依次存放。矩陣的轉置 將...
資料結構 稀疏矩陣
簡單的說,設矩陣amn中有s個非零元素,若s遠遠小於矩陣元素的總數,則稱a為稀疏矩陣。s與m x n的比稱為矩陣的稀疏因子。當用陣列儲存稀疏矩陣中的元素時,僅有少部分的空間被利用,造成空間的浪費,為了節省儲存空間,可以採用一種壓縮的儲存方法來表示稀疏矩陣。由於非零元素的分布一般是沒有規律的,因此在儲...