此第一版為 Lua 5.0 所撰寫。雖然對於後續版本仍有很大的關聯性,但仍有一些差異。
第四版以 Lua 5.3 為目標,可在 Amazon 和其他書店購買。
購買此書,您也同時 贊助了 Lua 專案。
![]() |
Lua 中的程式設計 | ![]() |
第二部分。表格和物件 第 11 章。資料結構 |
由於表格是動態實體,因此在 Lua 中實作連結串列非常容易。每個節點都以表格表示,而連結僅是包含對其他表格的參考之表格欄位。例如,若要實作一個基本串列,其中每個節點都有兩個欄位,next
和 value
,我們需要一個變數作為串列根目錄
list = nil若要插入一個元素到串列開頭,其值為
v
,我們執行
list = {next = list, value = v}若要遍歷串列,我們撰寫
local l = list while l do print(l.value) l = l.next end
其他類型的串列,例如雙向連結串列或循環串列,也可以輕鬆實作。然而,您在 Lua 中很少需要這些結構,因為通常有更簡單的方法來表示您的資料,而不需要使用串列。例如,我們可以使用一個(無界)陣列來表示堆疊,其中一個欄位 n
指向頂端。
版權所有 © 2003–2004 Roberto Ierusalimschy。保留所有權利。 | ![]() |