lua-队列
来源:互联网 发布:数据安全保护策略 编辑:程序博客网 时间:2024/06/05 20:16
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)
--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)
0 0
- lua-队列
- lua的数据结构 -- 队列
- lua实现的队列
- lua定长循环队列
- lua 队列的简单实现
- 实现Lua的双向队列
- Lua实现的栈、队列
- lua中用table实现队列
- lua定长循环队列2
- Lua 双向队列的实现
- Nginx通过LUA脚本访问RabbitMQ消息队列
- lua+redis业务场景举例——队列中的应用
- LUA
- Lua
- LUA
- lua
- Lua
- lua
- Android双向滑动冲突解决方案
- VTK 7.0 安装中内存读取冲突 no override found for “.." 解决记录
- 剑指offer 调整数组顺序使奇数位于偶数前面
- 【动态规划】[USACO2016 金组]Circular Barn Revisited
- 【Java数据库连接类】封装数据库操作的连接类DBConnection
- lua-队列
- 【转载】Contiki 的protothreads
- CodeForces - 633D Fibonacci-ish (map&暴力)
- 第二次上机实践项目-项目3-输出星号图
- poj 3233 Matrix Power Series 矩阵快速幂
- 杭电2571
- C 语言基础(一)
- spring4.2.5实现调度任务的几种方式
- 汉诺塔问题