设单循环链表中结点的结构为(data, link),且rear是指向非空的带表头结点的单循环链表的尾结点的指针。若想删除链表第一个结点,则应执行的操作是。
A. s = rear;rear = rear->link;free(s);
B. rear = rear->link;free(rear);
C. rear = rear->link->link;free(rear);
D. s = rear->link->link;rear->link->link = s->link;free(s);
查看答案
带表头的双向循环链表的空表满足。
A. first = NULL;
B. first->next == first
C. first->prior == NULL
D. first->next == NULL
在非空循环双向链表中,在q所指的结点前插入一个由p所指结点的过程依次为:p->next=q;p->prior=q->prior;;q->prior=p.
A. q->next = p
B. q->prior->next = p
C. p->prior->next = p
D. p->next->prior = p.
某链表中最常用的操作是在最后一个元素之后a插入一个元素和删除最后一个元素,则采用存储方式最节省运算时间。
A. 单链表
B. 双链表
C. 单循环链表
D. 带头结点的双循环链表
在双向循环链表中p所指的结点之后插入s指针所指向的结点,其操作是( )。
A. p->next=s; s->prior=p; p->next->prior=s; s->next=p->next;
B. s->prior=p; s->next=p->next; p->next=s; p->next->prior=s;
C. p->next=s; p->next->prior=s; s->prior=p; s->next=p->next;
D. s->prior=p; s->next=p->next; p->next->prior=s; p->next=s;