《学习JavaScript数据结构与算法》笔记---队列

本文源码 这里

概念

队列是单向操作,而且是先进先出,所以在队尾进行添加元素,队头移除元素。 用数组来理解就是,从数组尾部添加,数组头部删除这样才能模拟先进先出。

示例图

创建一个队列
1
2
3
4
class Queue(){
/*通过数组来保存队列的元素*/
item=[];
};
给队列添加一些方法
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
class Queue{
item=[];
// 给队列队尾添加元素
enqueue(val){
return this.item.push(val);
};
// 给队列队头删除元素
dequeue(val){
return this.item.shift(val);
};
// 返回队列第一个元素
front(val){
return this.item[0];
};
// 判断队列中是否含有元素
isEmpty(val){
return this.item.length;
};
// 判断队列的元素个数
size(){
return this.item.length;
};
};