手机
当前位置:查字典教程网 >编程开发 >Javascript教程 >javascript中利用数组实现的循环队列代码
javascript中利用数组实现的循环队列代码
摘要://循环队列functionCircleQueue(size){this.initQueue(size);}CircleQueue.prot...

//循环队列

function CircleQueue(size){

this.initQueue(size);

}

CircleQueue.prototype = {

//初始化队列

initQueue : function(size){

this.size = size;

this.list = new Array();

this.capacity = size + 1;

this.head = 0;

this.tail = 0;

},

//压入队列

enterQueue : function(ele){

if(typeof ele == "undefined" || ele == ""){

return;

}

var pos = (this.tail + 1) % this.capacity;

if(pos == this.head){//判断队列是否已满

return;

}else{

this.list[this.tail] = ele;

this.tail = pos;

}

},

//从队列中取出头部数据

delQueue : function(){

if(this.tail == this.head){ //判断队列是否为空

return;

}else{

var ele = this.list[this.head];

this.head = (this.head + 1) % this.capacity;

return ele;

}

},

//查询队列中是否存在此元素,存在返回下标,不存在返回-1

find : function(ele){

var pos = this.head;

while(pos != this.tail){

if(this.list[pos] == ele){

return pos;

}else{

pos = (pos + 1) % this.capacity;

}

}

return -1;

},

//返回队列中的元素个数

queueSize : function(){

return (this.tail - this.head + this.capacity) % this.capacity;

},

//清空队列

clearQueue : function(){

this.head = 0;

this.tail = 0;

},

//判断队列是否为空

isEmpty : function(){

if(this.head == this.tail){

return true;

}else{

return false;

}

}

}

【javascript中利用数组实现的循环队列代码】相关文章:

javascript实现youku的视频代码自适应宽度

javascript中DOM复选框选择用法实例

JavaScript数据结构与算法之栈与队列

javascript中innerText和innerHTML属性用法实例分析

javasript实现密码的隐藏与显示

JavaScript中的私有成员

javaScript中push函数用法实例分析

javascript实现简单的省市区三级联动

javascript委托(Delegate)blur和focus用法实例分析

javascript常用方法总结

精品推荐
分类导航