选择题
-
对于一非空的循环单链表,
h
和p
分别指向链表的头、尾结点,则有:- A.
p->next == h
- B.
p->next == NULL
- C.
p == NULL
- D.
p == h
- A.
-
在双向循环链表结点
p
之后插入s
的语句是:- A.
p->next=s; s->prior=p; p->next->prior=s ; s->next=p->next;
- B.
p->next->prior=s; p->next=s; s->prior=p; s->next=p->next;
- C.
s->prior=p; s->next=p->next; p->next=s; p->next->prior=s;
- D.
s->prior=p; s->next=p->next; p->next->prior=s; p->next=s;
- A.
-
在双向链表存储结构中,删除
p
所指的结点,相应语句为:- A.
p->prior=p->prior->prior; p->prior->next=p;
- B.
p->next->prior=p; p->next=p->next->next;
- C.
p->prior->next=p->next; p->next->prior=p->prior;
- D.
p->next=p->prior->prior; p->prior=p->next->next;
- A.
-
某线性表中最常用的操作是在最后一个元素之后插入一个元素和删除第一个元素,则采用什么存储方式最节省运算时间?
- A. 单链表
- B. 仅有尾指针的单循环链表
- C. 仅有头指针的单循环链表
- D. 双链表
-
若某表最常用的操作是在最后一个结点之后插入一个结点或删除最后一个结点。则采用哪种存储方式最节省运算时间?
- A. 单链表
- B. 双链表
- C. 单循环链表
- D. 带头结点的双循环链表
-
将线性表La和Lb头尾连接,要求时间复杂度为O(1),且占用辅助空间尽量小。应该使用哪种结构?
- A. 单链表
- B. 单循环链表
- C. 带尾指针的单循环链表
- D. 带头结点的双循环链表
-
(neuDS)在链表中若经常要删除表中最后一个结点或在最后一个结点之后插入一个新结点,则宜采用()存储方式。
- A. 顺序表
- B. 用头指针标识的循环单链表
- C. 用尾指针标识的循环单链表
- D. 双向链表
-
非空的循环单链表head的尾结点(由p所指向)满足()。
- A. p->next == NULL
- B. p == NULL
- C. p->next == head
- D. p == head
-
在循环双链表的p所指结点之前插入s所指结点的操作是()。
- A. p->prior = s; s->next = p; p->prior->next = s; s->prior = p->prior;
- B. p->prior = s; p->prior->next = s; s->next = p; s->prior = p->prior;
- C. s->next = p; s->prior = p->prior; p->prior = s; p->right->next = s;
- D. s->next = p; s->prior = p->prior; p->prior->next = s; p->prior = s;
-
若某表最常用的操作是在最后一个结点之后插入一个结点或删除最后一个结点,则采用()存储方式最节省运算时间。
- A. 单链表
- B. 给出表头指针的单循环链表
- C. 双链表
- D. 带表头附加结点的双循环链表
-
某线性表最常用的操作是在最后一个结点之后插入一个结点或删除第一个结点,故采用()存储方式最节省运算时间。
- A. 单链表