对javascript循环队列的一点理解

基本队列的逻辑 是先进先出 

循环队列的逻辑遵循基本队列的逻辑先进先出 但是在空间利用上 我们把他想象问一个闭环 达到重复利用空间的目的 

举个例子 

一间教室 有前后门 现在规定 学生有学生从后门进 然后从第一排一个位置开始坐座位  出去从前门出 从第一排 第一个位置开始出去 

现在 我们给教室指定 只能坐50+ 1(空位)个人  当发现最后一排倒数第二个座位已经被占后,我们就去看之前的第一个位置 还有没有人 如果没有人我们就又从第一个位置开始坐人 当然出去的时候 每出去一个人 就把下一个人 标记为开始出去的人 而且座位会保留 每进来一个人  就要标记最后进来的位置  这样 我们就达到了 位置的重复利用

所以 我们要记录 每次最后进来的人的位置  以及 每次出去的位置  考虑的情况  坐到最后的位置 前面有没有人出去 以及  最后进来的人 的位置 加1 是不是跟前一次出去的位置是一样的  如果是一样的  说明位置已经坐满 无法再进人了 或者当要达到这种条件之前 提前给 教室加座位   

 

如果有不对的地方 欢迎指正

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值