击鼓传花小游戏
围成一圈传花,传到某个位置时,淘汰这个人,最终留下者为胜利者
使用的队列(先进先出)
1 function hotPotato(elementList, num){ 2 /* 3 * elementList 参与人员(数组) 4 * num 淘汰位置 5 */ 6 const queue = new Queue() // 创建队列 7 const elimitatedList = [] // 淘汰名单 8 for(let i = 0; i <elementList.length; i++){ 9 // 将参与人员导入队列 10 queue.enqueue(elementList[i]) 11 } 12 while(queue.size()>1){ 13 for(let i = 0; i < num; i++){ 14 // 击鼓传花,第一个人拿到花,传给第二个人,删除第一个人,加到最后一位,以此类推 15 queue.enqueue(queue.dequeue()) 16 } 17 elimitatedList.push(queue.dequeue()) // 淘汰的人加入淘汰名单中 18 } 19 return { 20 "elimitated": elimitatedList, 21 "winner": queue.dequeue() 22 } 23 }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器