稀疏矩陣的壓縮存儲有幾種方式,如:三元組順序表、行邏輯鏈接的順序表和十字鏈表。 使用鏈表存儲的好處是:便於矩陣中元素的插入和刪除。 例如:“將矩陣B加到矩陣A上”,那么矩陣A存儲的元素就會有變動。比如會增加一些非零元,或者刪除一些元素(因為bij+aij=0)。 下圖是矩陣M和M的十字鏈表 ...
前兩天在看課外的數據結構的書預習新知識的時候看到了一個特別有意思的稀疏矩陣問題,於是就按照書上的用C語言來實現之,剛學習數據結構的小白,請大佬們輕噴,下面上圖: 下面是代碼: 應該還是有很多可以優化的地方的,下次再碰到這樣的問題的時候在回過頭來看看吧 ...
2019-03-15 19:39 0 1017 推薦指數:
稀疏矩陣的壓縮存儲有幾種方式,如:三元組順序表、行邏輯鏈接的順序表和十字鏈表。 使用鏈表存儲的好處是:便於矩陣中元素的插入和刪除。 例如:“將矩陣B加到矩陣A上”,那么矩陣A存儲的元素就會有變動。比如會增加一些非零元,或者刪除一些元素(因為bij+aij=0)。 下圖是矩陣M和M的十字鏈表 ...
...
Description 當矩陣的非零元個數和位置在操作過程中變化較大時,就不宜采用順序存儲的結構來表示三元組的線性表了。因此,在這種情況下,采用鏈式存儲結構表示三元組更為恰當。十字鏈表就是能夠實現這樣功能的一種數據結構。 在十字鏈表中,每個非零元 ...
接着上篇繼續寫的,思路是自己想的,其實也挺簡單的 歡迎指出錯誤 這一次還是從相應的文件中讀取數據,測試時請在相應目錄放入相應文件(input.txt) 測試數據和上篇一樣: 4 6 5 1 ...
時間一晃已經大二下了,學校也開了數據結構的課,想起了自己大一剛會C語言,自學數據結構的時候,那時候很無助啊,不懂就只有拼命看,改bug改很久。 老師一節課講完了鄰接表,十字鏈表,鄰接多重表。然而感覺他好像在自己講自己的,一點也不認真。 但是依托老師是不行的,只懂理論也不行,或許學生認為鄰接矩陣 ...
題目: 7-1 稀疏矩陣 (30 分) 如果一個矩陣中,0元素占據了矩陣的大部分,那么這個矩陣稱為“稀疏矩陣”。對於稀疏矩陣,傳統的二維數組存儲方式,會使用大量的內存來存儲0,從而浪費大量內存。為此,可以用三元組 ...
...
參考:《大話數據結構》 鄰接表的缺陷:不能同時關注出度和入度 十字鏈表: (1)頂點表 firstin表示入邊表頭指針,指向該頂點的入邊表中的第一個結點;firstout表示出邊表頭指針,指向該頂點的出邊表中的第一個結點。 (2)邊表結點 tailvex是弧起點在頂點表中的下標 ...