Lua 实现双向队列:代码示例与常见操作全解析
在 Lua 中,可以通过自定义数据结构来实现双向队列。以下是一个简单的双向队列的 Lua 实现示例: ```lua local DoublyQueue = {} function DoublyQueue:new() local queue = {front = 1, rear = 0} setmetatable(queue, {__index = self}) return queue end function DoublyQueue:isEmpty() return self.rear < self.front end function DoublyQueue:enqueueFront(element) self.front = self.front - 1 self[self.front] = element end function DoublyQueue:enqueueRear(element) self.rear = self.rear + 1 self[self.rear] = element end function DoublyQueue:dequeueFront() if not self:isEmpty() then local element = self[self.front] self[self.front] = nil self.front = self.front + 1 return element end return nil end function DoublyQueue:dequeueRear() if not self:isEmpty() then local element = self[self.rear] self[self.rear] = nil self.rear = self.rear - 1 return element end return nil end function DoublyQueue:peekFront() if not self:isEmpty() then return self[self.front] end return nil end function DoublyQueue:peekRear() if not self:isEmpty() then return self[self.rear] end return nil end -- 测试示例 local dq = DoublyQueue:new() dq:enqueueFront(10) dq:enqueueRear(20) dq:enqueueFront(5) print(dq:peekFront()) print(dq:peekRear()) print(dq:dequeueFront()) print(dq:dequeueRear()) ``` 在上述示例中,我们创建了一个 `DoublyQueue` 类,实现了双向队列的常见操作,如入队(从前端和后端)、出队(从前端和后端)、查看前端和后端元素以及判断队列是否为空等。 ######[AI写代码神器 | 498点数解答 | 2024-07-30 10:20:37]
- Python实现Q老师成绩管理任务:修改与查看学生成绩(字节豆包 | 191点数解答 | 2025-12-20 20:55:41)98
- Python 代码助力 Q 老师高效管理班级学生成绩:修改与查看一键搞定(字节豆包 | 326点数解答 | 2025-12-27 20:48:12)104
- Java实现链表反转:迭代与递归双解法详解及开发实战指南(DeepSeek | 1409点数解答 | 2026-03-15 15:09:29)56
- Python 实现球类:精准计算半径、表面积与体积,附输入验证与异常处理!(阿里通义 | 261点数解答 | 2024-11-28 21:19:39)371
- Python 实现:从初始 URL 取参构建新链接并截取特定内容(字节豆包 | 262点数解答 | 2024-09-09 04:47:49)270
- PHP:从GET请求参数构建新URL并提取视频播放链接(GPT | 291点数解答 | 2024-09-09 04:49:12)391
- PHP 实现:从 GET 请求参数构建新 URL 并截取响应内容协议(字节豆包 | 312点数解答 | 2024-09-09 04:49:45)438
- PHP 实现:从 URL 参数提取、新 URL 构建到请求结果截取全流程解析(阿里通义 | 804点数解答 | 2024-09-09 04:51:29)275
- PHP实现:从GET请求参数构建新URL并截取特定视频链接内容(阿里通义 | 476点数解答 | 2024-09-09 04:53:43)316
- PHP:从GET请求参数到构建新URL并截取视频链接的实现(字节豆包 | 242点数解答 | 2024-09-09 04:54:50)279
- PHP一键搞定:从URL参数提取到视频链接截取全流程(讯飞星火 | 282点数解答 | 2024-09-09 04:55:07)267
- PHP实现:从URL参数获取、新URL构建到视频URL提取全流程(百度文心 | 649点数解答 | 2024-09-09 04:56:06)280