var Queue=function(){
this.item=[];
}
//加入元素
Queue.prototype.push=function(element){
this.item.push(element);
}
//删除队头元素
Queue.prototype.remove=function(){
return this.item.shift();
}
//查看队首元素
Queue.prototype.LOOK=function(){
return this.item[0];
}
//队列是否为空
Queue.prototype.idEmpty=function(){
return this.item.length==0;
}
//队列中元素的个数
Queue.prototype.size=function(){
return this.item.length;
}
//toString方法
Queue.prototype.toString=function(){
var x='';
for(var i=0;i<this.item.length;i++){
x+=this.item[i]+' ';
}
return x;
}
function passGame(NameList,number){
var queue=new Queue();
//将所有人入队
for(var i=0;i<NameList.length;i++){
queue.push(NameList[i]);
}
console.log("原始的队列"+queue);
console.log("原始队列长度"+queue.size());
//将序号小于number的出列,并加入列尾,等于number的出列
while(queue.size()>1){
for(var y=0;y<number-1;y++){
var aaaaa=queue.remove()
console.log("aaaaa :"+aaaaa);
queue.push(aaaaa);
}
queue.remove();
console.log("本次的结果"+queue);
}
console.log(queue.size());
console.log(queue);
var endname=queue.LOOK();
console.log("最后一个人的名字是"+endname);
return NameList.indexOf(endname);
}
nameArray=['z','a','s','e','r'];
console.log(passGame(nameArray,3));
注意:数组名奴能设置为name,否则自动转换成字符串。