设以数组 Q[m] 存放循环队列的元素, 变量 rear 和 queuelen 分别表示循环队列中队尾元素的下标位置和元素的个数。 则计算该队列中队头元素下标位置的公式是( ) 。

设以数组 Q[m] 存放循环队列的元素, 变量 rear 和 queuelen 分别表示循环队列中队尾元素的下标位置和元素的个数。 则计算该队列中队头元素下标位置的公式是( ) 。


【正确答案】:(REAR-QUEUELEN+M)%M
【题目解析】:

将存储队列元素的一维数组首尾相接,形成一个环状,这样的队列称为循环队列。
一般情况下是rear-queuelen即是队头元素下标位置,但在循环队列中rear-queuelen可能为负,当rear-queuelen为负时,(rear-queuelen+m)%m是队头元素下标位置。故综上队头元素下标位置是(rear-queuelen+m)%m。


Top