a={}
for i=1,10 do
a[i]={}
for j=0,10 do
if(i%2==0) then
a[i][j]=0
end
end
end
print(a[9][10])
print(a[10][10])
print()
--双端队列
List={}
function List.new()
return {first = 0,last = -1}
end
function List.pushleft(list,value)
local first= list.first-1
list[first] = value
list.first= first
end
function List.pushright(list,value)
local last = list.last+1
list[last]= value
list.last=last
end
function List.popleft(list)
local first=list.first
if(first>list.last) then
error("list is empty")
end
local res= list[first]
list[first]=nil
list.first=list.first+1
return res
end
function List.popright(list)
local last = list.last
if last<first then
error("the list is empty")
end
local res = list[last]
list[last]= nil
list.last= list.last-1
return res
end
function List.display(list)
if(list.first>list.last) then
error("the list is empty",2)
end
for i=list.first ,list.last do
print(list[i])
end
end
mylist=List.new()
List.pushleft(mylist,12)
List.pushleft(mylist,"00")
List.pushright(mylist,34)
List.pushright(mylist,56)
List.display(mylist)
print()
function newStack ()
return {""}
end
function serialize(o)
if type(o) == "number" then
io.write(o)
elseif type(o) == "string" then
--不要手动加入引号,否则会有边际效应
io.write(string.format("%q",o))
elseif type(o) == "table" then
io.write("{\n")
for i,v in pairs(o) do
io.write(" "..i.." = ")
serialize(v)
io.write(",\n")
end
io.write("}\n")
end
end
serialize(123)
print()
serialize("112233")
print()
tab = { a=11,haha="www" ,c=333}
serialize(tab)
function basicSerialize (o)
if type(o) == "number" then
return tostring(o)
else
return string.format("%q", o)
end
end
function save (name, value, saved)
saved = saved or {} -- 参数未传入的初始化
io.write(name, " = ")
if type(value) == "number" or type(value) == "string" then
io.write(basicSerialize(value), "\n")
elseif type(value) == "table" then
if saved[value] then
io.write(saved[value], "\tcircle\n")
else
saved[value] = name
io.write("{}\n")
for k,v in pairs(value) do
local fieldname = string.format("%s[%s]", name,
basicSerialize(k))
save(fieldname, v, saved)
end
end
else
error("cannot save a " .. type(value))
end
end
a = {x=1, y=2; {3,4,5}}
a[2] = a -- 循环表
a.z = a[1] -- 共享子表
save('a',a)
运行结果:
nil
0
00
12
34
56
123
"112233"
{
a = 11,
c = 333,
haha = "www",
}
a = {}
a[1] = {}
a[1][1] = 3
a[1][2] = 4
a[1][3] = 5
a[2] = a circle
a["y"] = 2
a["x"] = 1
a["z"] = a[1] circle
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件!
如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
暂无“Lua编程示例(三):稀疏表、双端队列、格式化输出、表和循环表的格式化输出”评论...
更新动态
2025年10月27日
2025年10月27日
- 小骆驼-《草原狼2(蓝光CD)》[原抓WAV+CUE]
- 群星《欢迎来到我身边 电影原声专辑》[320K/MP3][105.02MB]
- 群星《欢迎来到我身边 电影原声专辑》[FLAC/分轨][480.9MB]
- 雷婷《梦里蓝天HQⅡ》 2023头版限量编号低速原抓[WAV+CUE][463M]
- 群星《2024好听新歌42》AI调整音效【WAV分轨】
- 王思雨-《思念陪着鸿雁飞》WAV
- 王思雨《喜马拉雅HQ》头版限量编号[WAV+CUE]
- 李健《无时无刻》[WAV+CUE][590M]
- 陈奕迅《酝酿》[WAV分轨][502M]
- 卓依婷《化蝶》2CD[WAV+CUE][1.1G]
- 群星《吉他王(黑胶CD)》[WAV+CUE]
- 齐秦《穿乐(穿越)》[WAV+CUE]
- 发烧珍品《数位CD音响测试-动向效果(九)》【WAV+CUE】
- 邝美云《邝美云精装歌集》[DSF][1.6G]
- 吕方《爱一回伤一回》[WAV+CUE][454M]