javascript数据结构-队列

Posted donglegend

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript数据结构-队列相关的知识,希望对你有一定的参考价值。

gihub博客地址

队列(Queue)是一种特殊的线性表,特殊之处在于它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作,和栈一样,队列是一种操作受限制的线性表。进行插入操作的端称为队尾,进行删除操作的端称为队头。

队列类

function Queue(){
	this.data = [];
}

  

添加数据

数据添加到末尾

enqueue: function(element) {
	this.data.push(element);
}

  

删除数据

从头部删除

dequeue: function() {
	this.data.shift();
}

  

获取数据

返回第一个

front: function() {
	return this.data[0];
}

  

是否为空

isEmpty: function (){
	return this.data.length == 0;
}

  

清空数据

clear: function (){
	this.data= [];
}

  

数据长度

size: function (){
	return this.data.length;
}

  

完整代码

function Queue() {
	this.data = [];
}
Queue.prototype = {
	enqueue: function(element) {
		this.data.push(element);
	},
	dequeue: function() {
		this.data.shift();
	},
	front: function() {
		return this.data[0];
	},
	isEmpty: function() {
		return this.data.length == 0;
	},
	clear: function() {
		this.data = [];
	},
	size: function() {
		return this.data.length;
	},
	print: function() {
		console.log(this.data.toString());
	}
}

  

以上是关于javascript数据结构-队列的主要内容,如果未能解决你的问题,请参考以下文章

16个必备的JavaScript代码片段

几个有用的JavaScript/jQuery代码片段(转)

你可能不知道的JavaScript代码片段和技巧(下)

你可能不知道的JavaScript代码片段和技巧(上)

VSCode自定义代码片段12——JavaScript的Promise对象

VSCode自定义代码片段12——JavaScript的Promise对象