在 JavaScript 中创建队列
尽管 JavaScript 中的数组提供了队列的所有功能,但我们还是来实现一下自己的队列类。我们的队列类将包含以下函数 −
- enqueue(element):向队列添加元素的函数。
- dequeue():从队列中移除元素的函数。
- peek():返回队列首部的元素。
- isFull():检查是否已到达队列中的元素数量上限。
- isEmpty():检查队列是否为空。
- clear():移除所有元素。
- display():显示数组中的所有内容
我们先定义一个简单的类,其中有一个构造函数,该构造函数采用队列的最大大小,还有一个辅助函数,当我们为该类实现其他函数时,它将为我们提供帮助。与我们实现的堆栈相同,我们还将使用数组来实现队列。
示例
class Queue {
constructor(maxSize) {
// Set default max size if not provided
if (isNaN(maxSize)) {
maxSize = 10;
}
this.maxSize = maxSize;
// Init an array that'll contain the queue values.
this.container = [];
}
// Helper function to display all values while developing
display() {
console.log(this.container);
}
// Checks if queue is empty
isEmpty(){
return this.container.length === 0;
}
// checks if queue is full
isFull() {
return this.container.length >= this.maxSize;
}
}我们还定义了另外 2 个函数,isFull 和 isEmpty,用于检查队列是否已满或为空。
isFull 函数仅检查容器的长度是否等于或大于 maxSize,并据此返回。
isEmpty 函数检查容器的大小是否为 0。
当我们定义其他操作时,这些函数将非常有用。我们从现在开始定义的函数都将放在队列类中。
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP