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) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |