首页 > 试题广场 >

设数组Data[0..m]作为循环队列SQ的存储空间,fro

[单选题]
设数组Data[0..m]作为循环队列SQ的存储空间,front为队头指针,rear为队尾指针,则执行出队操作的语句为(    )。
  • front=front+1
  • front=(front+1)% m
  • rear=(rear+1)%m
  • front=(front+1)%(m+1)
肯定不止我一个人看对了数组大小。。。
发表于 2018-04-24 14:18:28 回复(0)
更多回答
循环队列中,设front为队头指针,rear为队尾指针,存储空间大小为n; 则队列满的条件是(rear+1)%n==front; 队列空的条件是front==rear;  
队头元素出队列,front=(front+1)%n ; 元素从队尾入队列,rear=(rear+1)%n;  
注意本题中的数组是[0..m],所以存储大小为m+1
发表于 2017-08-06 22:12:24 回复(0)
循环队列的相关条件和公式:
1.队空条件:rear==front
2.队满条件:(rear+1) %QueueSIze==front,其中QueueSize为循环队列的最大长度
3.计算队列长度:(rear-front+QueueSize)%QueueSize
4.入队:(rear+1)%QueueSize
5.出队:(front+1)%QueueSize
这里出队(front+1)%QueueSize,QueueSize是数组大小,也就是m+1。
编辑于 2018-07-11 10:43:26 回复(0)
看下数组的范围是【0,m】所以数组的size为m+1;可能出现的错误
发表于 2017-05-12 11:10:12 回复(2)
【转自热评】 
循环队列的相关条件和公式:
1.队空条件:rear==front
2.队满条件:(rear+1) %QueueSIze==front,其中QueueSize为循环队列的最大长度
3.计算队列长度:(rear-front+QueueSize)%QueueSize
4.入队:(rear+1)%QueueSize
5.出队:(front+1)%QueueSize
这里出队(front+1)%QueueSize,QueueSize是数组大小,也就是m+1。
编辑于 2019-07-28 16:14:46 回复(0)
这题跟王道的好像。。。。
发表于 2018-05-22 01:03:12 回复(0)
0-m 所以是m+1
发表于 2018-05-02 14:39:29 回复(0)
肯定不止我一个人看错数组大小…
发表于 2018-03-26 17:23:20 回复(0)