struct SeqQueue { T* data; // 指向数据元素数组的指针 int front; // 队头 int rear; // 队尾 int max; // 队列中最多可放max-1个数据元素,留一个空数据单元以区分空和满 }; 函数bool SQ_IsFull(SeqQueue* sq)的功能是判断队列是否为满。队列满时返回true,否则返回false。 函数bool SQ_In(SeqQueue* sq, T x)的功能是将 x 入队,若入队失败(队列满),则返回false,否则返回true。 bool SQ_In(SeqQueue* sq, T x) { /********** Begin *********/ /********** End **********/ } 请将SQ_In函数代码补充完整(Begin 和 End行之间)。可以使用 SQ_IsFull 函数。
时间: 2023-06-29 14:18:56 浏览: 179
数据结构上机,c++,!!!!!
bool SQ_In(SeqQueue* sq, T x) {
if (SQ_IsFull(sq)) { // 判断队列是否为满
return false; // 队列满,入队失败,返回 false
}
sq->data[sq->rear] = x; // 将数据元素 x 存入队尾
sq->rear = (sq->rear + 1) % sq->max; // 队尾指针加 1,考虑到循环队列的情况
return true; // 入队成功,返回 true
}
阅读全文