对于循环队列()
A.无法判断队列是否为空
B.无法判断队列是否为满
C.队列不可能满
D.以上说法都不是
正确答案是 D
队列头尾相接的顺序存储结构称为循环队列。只凭等式front=rear是无法判断队空还是队满,所以我们约定当队列头指针front在队尾指针rear的下一个位置上时,作为队列"已满"的标志,当队列满时,数组中还会有一个空闲位置。我们也可以设置一个标志变量flag,当(front == rear && flag == 0) 队列为空, 当(front == rear && flag == 1)队列为满。所以循环队列可以判断是否为空、是否为满。
通过一定算法是可以区分队空队满的
正确答案是D
循环队列最终会空出一个,那样也算是满吗?
为了方便起见,约定:初始化建空队时,令 front=rear=0, 当队空时:front=rear 当队满时:front=rear 亦成立 因此只凭等式front=rear无法判断队空还是队满。 有两种方法处理上述问题: (1)另设一个标志位以区别队列是空还是满。 (2)少用一个元素空间,约定以“队列头指针front在队尾指针rear的下一个位置上”作为队列“满”状态的标志。即: 队空时: front=rear 队满时: (rear+1)%maxsize=front
小程序没有分享到朋友圈的功能,但是产品为了推广,需要曲线实现这个功能,请给出设计方案?
B2C网站上促销价格出错了,如何做危机公关?
cookies,sessionStorage 和 localStorage 的区别?
什么是 Cookie?它的作用是什么?
通过一定算法是可以区分队空队满的
正确答案是D
循环队列最终会空出一个,那样也算是满吗?
为了方便起见,约定:初始化建空队时,令
front=rear=0,
当队空时:front=rear
当队满时:front=rear 亦成立
因此只凭等式front=rear无法判断队空还是队满。 有两种方法处理上述问题:
(1)另设一个标志位以区别队列是空还是满。
(2)少用一个元素空间,约定以“队列头指针front在队尾指针rear的下一个位置上”作为队列“满”状态的标志。即:
队空时: front=rear
队满时: (rear+1)%maxsize=front