题16
题目
Q:在一个链队列中,假设队头指针为 front,队尾指针为 rear, x 所指向的元素需要入队,则需要执行的操作为 ( ) .
A. front = x, front = front->next
B. x->next = front->next, front = x
C. rear->next = x, rear = x
D. rear->next = x, x->next = NULL, rear = x
分析
A:插入操作时,先将结点 x 插入到链表尾部,再让 rear 指向这个结点 x 。 C 的做法不够严密, 因为是队尾,所以队尾 x->next 必须置为空。
// 插入结点到链表尾部
rear->next = x;
rear = x;
// 队尾结点的next指针必须置为空
x->next = NULL;解
D