Lua中用tables很容易实现链表,每一个节点是一个table,指针是这个表的一个域(field),并且指向另一个节点(table)。例如,要实现一个只有两个域:值和指针的基本链表,代码如下:
根节点:
list = nil
在链表开头插入一个值为v的节点:
list = {next = list, value = v}
要遍历这个链表只需要:
local l = list
while l do
print(l.value)
l = l.next
end