加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

lua-队列

发布时间:2020-12-14 21:56:45 所属栏目:大数据 来源:网络整理
导读:List = {} -- first用于队列头部索引 ? ?last用于队列尾部索引 function List.new() ? ? return {first = 0,last = -1} end function List.pushFront(list,value) -- first用于向负数进攻 ? ? local first = list.first - 1 ? ? list.first = first ? ? list
List = {}


-- first用于队列头部索引 ? ?last用于队列尾部索引
function List.new()
? ? return {first = 0,last = -1}
end


function List.pushFront(list,value)
-- first用于向负数进攻
? ? local first = list.first - 1
? ? list.first = first
? ? list[first] = value
end


function List.pushBack(list,value)
-- last用于向正数进攻 ? ? local last = list.last + 1 ? ? list.last = last ? ? list[last] = value end function List.popFront(list) ? ? local first = list.first ? ? if first > list.last then ? ? ? ? error("List is empty") ? ? end ? ? local value = list[first] ? ? list[first] = nil ? ? list.first = first + 1 ? ? return value end function List.popBack(list) ? ? local last = list.last ? ? if list.first > last then ? ? ? ? error("List is empty") ? ? end ? ? local value = list[last] ? ? list[last] = nil ? ? list.last = last - 1 ? ? return value end lp=List.new() --队列头部插入1 : ? ?1 --队列头部插入2 : 2 ?1 --队列尾部插入-1 : 2 ?1 ?-1 --队列尾部插入-2 : 2 ?1 ?-1 ?-2 List.pushFront(lp,1) List.pushFront(lp,2) List.pushBack(lp,-1) List.pushBack(lp,-2) --队列头部弹出; 2 x=List.popFront(lp) print(x) --队列尾部弹出; -2 x=List.popBack(lp) print(x) --队列头部弹出; 1 x=List.popFront(lp) print(x) --队列尾部弹出; -1 x=List.popBack(lp) print(x)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读