在封装了对列的简单操作后,我们在此基础上进行简单应用

代码实现
// 击鼓传花案例
function passGame(nameList,num){
//1.创建一个队列
let queue=new Queue()
// 2.将所有人一次加入到队列中
for (let i=0;i
queue.enqueue(nameList[i])
}
// 3.开始数我们的数字,
// 不是我们的num,将其放置在我们队列的末尾
// 是num这个数字的时候,将其从队列中删除掉!
// 下面的是将num数字之前的数字重新放置在末尾!
while(queue.size()>1){
for (let i=0;i
queue.enqueue(queue.dequeue())
}
//对应是num数字的人将其删除淘汰掉!
queue.dequeue()
}
// 4.获取剩下的那个人
alert(queue.size())
let endName=queue.front()
alert('最终剩下的人:'+endName)
//查看最后的剩下的人在原来数组中的下标值
return nameList.indexOf(endName)
}
//测试
names=['lili','LuCy','Tom','lilei','why']
alert(passGame(names,3))
测试结果:


