前言
我们已经学习了一种受限的线性结构: 栈结构. 并且已经知道这种受限的数据结构对于解决某些特定问题, 会有特别的效果.
下面, 我们再来学习另外一个受限的数据结构: 队列. 它也是一种受限的线性结构.
队列
一. 认识队列
我们也先来认识一下队列, 看看它的特点和应用场景等.
队列结构

队列的操作
自定义对列:
<script>
// 自定义队列
function Queue() {
var items = []
// 队列操作的方法
// enter queue方法
this.enqueue = function (element) {
items.push(element)
}
// delete queue方法
// 注意: 从队列中删除元素不可以删除最后一个元素了. 因为, 先进入队列中的元素, 先从队列中取出. 因此, 应该删除第一个元素
this.dequeue = function () {
return items.shift()
}
// 查看前端的元素
this.front = function () {
return items[0]
}
// 查看队列是否为空
this.isEmpty = function () {
return items.length == 0
}
// 查看队列中元素的个数
this.size = function () {
return items.length
}
}
script>