JavaScript描述---队列

在这里插入图片描述

  • 队列的特点:队列是一种先进先出(First in First Out)的线性表,简称FIFO。允许插入的一端称为队尾,允许删除的一端称为队头。
  • 队列的操作方法:
    push():向队尾添加元素
    shift():删除队首元素
    toString():显示队列中的所有元素
  • 队列的实现
function Queue(){
	this.dataStore=[];
	this.enqueue=enqueue;
	this.dequeue=dequeue;
	this.front=front;
	this.back=back;
	this.toString=toString;
	this.empty=empty;
}
//向队尾添加一个元素
function enqueue(element){
	this.dataStore.push(element);
}
//删除队首元素
function dequeue(){
	return this.dataStore.shift();
}
//读取队首元素
function front(){
	return this.dataStore[0];
}
//读取队尾元素
function back(){
	return this.dataStore[this.dataStore.length-1];
}
//显示队内所有元素
function toString(){
	var retStr='';
	for(var i=0;i<this.dataStore.length;++i){
		retStr+=this.dataStore[i]+"\n";
	}
	return retStr;
}
//判断队列是否为空
function empty(){
	if(this.dataStore.length==0){
		return ture;
	}
	else{return false;}
}

测试用例如下:

var q=new Queue();
q.enqueue("Meredith");
q.enqueue("Cynthia");
q.enqueue("Jennifer");
console.log(q.toString());
q.dequeue();
console.log(q.toString());
console.log("Front of queue:"+q.front());
console.log("back of queue:"+q.back());

测试结果如下图所示:
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值