数据结构---队列

前言

队列是一种先进先出(FIFO)的数据结构,它有两个主要操作:入队(enqueue)和出队(dequeue)。队列中的元素只能通过队尾入队,只能通过队头出队。

队列的特点

  1. 只能在队尾添加元素,在队首删除元素。
  2. 先进先出的原则。
  3. 适用于需要按照时间顺序处理的场景。

队列的常用方法

  1. enqueue(item): 向队列尾部添加一个或多个新的项。
  2. dequeue(): 移除队列的第一个项,并返回被移除的元素。
  3. head(): 返回队列第一个元素,队列不做任何变动。
  4. tail(): 返回队列最后一个元素,队列不做任何变动。
  5. isEmpty(): 队列内无元素返回 true,否则返回 false。
  6. size(): 返回队列内元素个数。
  7. clear(): 清空队列。

代码实现

队列的本质是数组,所以队列的方法就是对数组的再次封装

javascript 复制代码
class QUEUE {
    constructor() {
        this.queue = [];
    }
 
    enqueue(val) {
        this.queue.push(val);
    }
 
    dequeue() {
        this.queue.shift();
    }
 
    head() {
        return this.queue[0];
    }
 
    tail() {
        return this.queue[this.queue.length-1];
    }
 
    isEmpty() {
        return this.queue.length > 0 ? true : false;
    }
 
    size() {
        return this.queue.length;
    }
 
    clear() {
        return this.queue = []
    }
}
 
export default QUEUE;
相关推荐
稚辉君.MCA_P8_Java1 天前
Gemini永久会员 快速排序(Quick Sort) 基于分治思想的高效排序算法
java·linux·数据结构·spring·排序算法
cpp_25011 天前
P5412 [YNOI2019] 排队
数据结构·c++·算法·题解·洛谷
_OP_CHEN1 天前
算法基础篇:(二十一)数据结构之单调栈:从原理到实战,玩转高效解题
数据结构·算法·蓝桥杯·单调栈·算法竞赛·acm/icpc
代码游侠1 天前
学习笔记——数据结构学习
linux·开发语言·数据结构·笔记·学习
蘑菇小白1 天前
数据结构--链表
数据结构·链表
古译汉书1 天前
嵌入式笔记(个人总结)
数据结构·笔记·stm32·单片机·嵌入式硬件
不许哈哈哈1 天前
Python数据结构
数据结构·算法·排序算法
sin_hielo2 天前
leetcode 2872
数据结构·算法·leetcode
AI科技星2 天前
为什么宇宙无限大?
开发语言·数据结构·经验分享·线性代数·算法
合方圆~小文2 天前
AI摄像头精准识别技术依赖于深度算法
数据结构·数据库·数码相机·模块测试