循环队列 网坑总结

循环队列,网上一搜一大堆,细细看来,都是bug满天飞,还有勇气贴代码出来。。。耗费一早终于搞明白了,遂、小计一下:


1.循环队列原则:先进先出


2.循环队列分为队首指针(front)和队尾指针(rear)


3.判断空队时 :front == rear


3.判断队满时:(rear+1)%MaxSize == front


4.入队:rear=(rear+1)%MaxSize; Q(rear)=x;


5.出队:front =(front+1)%MaxSize;x=Q(front);


6.队长:(rear-front+MaxSize)%MaxSize


注:
一、在队中front永远指向队首,也就是当前已删除的元素或者队首初始化的位置。不可直接操作!


二、rear永远指向的队尾最后一个元素,遵循先入先出原则,该指针不可直接操作!


三、求队长是加MaxSize可以防止rear<front出现负数.



  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值