稀疏矩陣的壓縮存儲有幾種方式,如:三元組順序表、行邏輯鏈接的順序表和十字鏈表。 使用鏈表存儲的好處是:便於矩陣中元素的插入和刪除。 例如:“將矩陣B加到矩陣A上”,那么矩陣A存儲的元素就會有變動。比如會增加一些非零元,或者刪除一些元素(因為bij+aij=0)。 下圖是矩陣M和M的十字鏈表 ...
Description 當矩陣的非零元個數和位置在操作過程中變化較大時,就不宜采用順序存儲的結構來表示三元組的線性表了。因此,在這種情況下,采用鏈式存儲結構表示三元組更為恰當。十字鏈表就是能夠實現這樣功能的一種數據結構。 在十字鏈表中,每個非零元可以用一個包含 個域的結點表示。其中i j和e這 個域分別表示該非零元所在的行 列和非零元的值,向右域right用來鏈接同一行中下一個非零元,而向下域d ...
2019-10-14 01:22 0 362 推薦指數:
稀疏矩陣的壓縮存儲有幾種方式,如:三元組順序表、行邏輯鏈接的順序表和十字鏈表。 使用鏈表存儲的好處是:便於矩陣中元素的插入和刪除。 例如:“將矩陣B加到矩陣A上”,那么矩陣A存儲的元素就會有變動。比如會增加一些非零元,或者刪除一些元素(因為bij+aij=0)。 下圖是矩陣M和M的十字鏈表 ...
...
前兩天在看課外的數據結構的書預習新知識的時候看到了一個特別有意思的稀疏矩陣問題,於是就按照書上的用C語言來實現之,剛學習數據結構的小白,請大佬們輕噴,下面上圖: 下面是代碼: 應該還是有很多可以優化的地方的,下次再碰到這樣的問題的時候在回過頭來看看吧 ...
接着上篇繼續寫的,思路是自己想的,其實也挺簡單的 歡迎指出錯誤 這一次還是從相應的文件中讀取數據,測試時請在相應目錄放入相應文件(input.txt) 測試數據和上篇一樣: 4 6 5 1 ...
題目: 7-1 稀疏矩陣 (30 分) 如果一個矩陣中,0元素占據了矩陣的大部分,那么這個矩陣稱為“稀疏矩陣”。對於稀疏矩陣,傳統的二維數組存儲方式,會使用大量的內存來存儲0,從而浪費大量內存。為此,可以用三元組 ...
...
參考:《大話數據結構》 鄰接表的缺陷:不能同時關注出度和入度 十字鏈表: (1)頂點表 firstin表示入邊表頭指針,指向該頂點的入邊表中的第一個結點;firstout表示出邊表頭指針,指向該頂點的出邊表中的第一個結點。 (2)邊表結點 tailvex是弧起點在頂點表中的下標 ...
矩陣之間能夠進行加法運算的前提條件是:各矩陣的行數和列數必須相等。 在行數和列數都相等的情況下,矩陣相加的結果就是矩陣中對應位置的值相加所組成的矩陣,例如: 圖1 矩陣相加 十字鏈表法 之前所介紹的都是采用順序存儲結構存儲三元組,在類似於矩陣的加法 ...