2012-06-23 21 views
-2

正如我的大學老師所問,我有一個很大的麻煩代表了一個帶有多列表的C中的稀疏矩陣。表示一個帶有鏈表的稀疏矩陣

Image

對於我的理解有幾種類型的列表:

  • 主要一個包含一個指向下一行和列
  • 一列和行
  • 之一元素。

任何幫助如何實現這將不勝感激。

+0

你要問一個具體的* *的問題。有哪些具體的技術問題妨礙了你的進步? –

+0

我的直覺是,製作{row,col}鏈接列表* circular *只會造成麻煩。恕我直言,NULL指針作爲結束「哨兵」值在實踐中更加優雅。 – wildplasser

回答

2

(我將解釋如何能代表照片如果這是你問)
從你的照片我明白,你有3種類型的節點和一些規則:

  • 一)一個用於行和列(用2指針)
  • b)一種用於矩陣的大小(2點的指針的數量和witdh和 高度)
  • c)一種與元素的值,該值不是零(與2 指針,元素的列值和行值以及 元件)

規則:

  1. 的b)元素有一個指針指向的第一行元素和第一 列元素
  2. 每一行元件有一個指針指向下一行元件(最後有一個指針 到b)元素)
  3. 每個colum元素都有一個指向下一個colum元素的指針,最後一個 有一個指向b)元素的指針
  4. 每一行有指向第一c)關於其行
  5. 每個式柱具有第二指針指向所述第一c)元素在其 式柱
  6. 每個元件指向第二指針元件:下一c)元素在它們的行上和下一個c)元素上(如果行上沒有下一個元素只是指向行元素,並且列上沒有下一個元素就指向列元素)

對於每個規則,如果你不能申請你只是跳過它,並離開指針空
希望它有幫助。
您可以創建一些自定義的linked lists,只是應用規則
Here你有一個簡單的教程