圖表

2013-07-06 36 views
1

在斯坦福的算法當然鄰接表表示,所述教授列出圖的鄰接列表表示的下列成分:圖表

  1. 數組或列表的頂點的邊
  2. 數組或列表
  3. 「頂點列表」中的每個頂點指向入射在其上的邊緣。
  4. 邊緣列表中的每條邊指向其邊緣點。

這是否對應Wikipedia? Goodrich和Tamassia提出的面向對象事件列表結構有特殊類別的頂點對象和邊緣對象?

這個表示與圖的「發生列表」表示是否相同?如果是,爲什麼在this article中認爲「鄰接列表」和「發病列表」是分開的?

回答

0

我猜這篇文章的作者會把這個結構稱爲事件列表,因爲節點通過邊而不是直接鏈接到其他節點。事件列表/鄰接列表的區別是非標準的,恕我直言並不十分有用,因爲兩種結構都具有類似的性能特徵,並且因爲如果刪除ADT列表,這種區分是有根據的並不清楚。

+0

http://steve-yegge.blogspot.com/2008/03/get-that-job-at-google.html。在內存中表示圖形有三種基本方法(對象和指針,矩陣和鄰接表),並且您應該熟悉每種表示形式及其優缺點。這裏作者也談到了三種不同的表述。你不覺得基本上只有兩個表示? – vkaul11

+0

@ vkaul11有許多表示,但最有用的區別在於鄰接矩陣和列表之間。似乎Yegge的「對象和指針」和「鄰接列表」之間的唯一區別在於事物是如何在面向對象的程序中構造的。 –

+0

我同意Tim Roughgarden的課程,他沒有真正區分列表,對象和指針。 – vkaul11