若在单向链表上,除访问链表中所有结点外,还需在表尾频繁插入结点,那么采用( )最节省时间。

题目
若在单向链表上,除访问链表中所有结点外,还需在表尾频繁插入结点,那么采用( )最节省时间。

A.仅设尾指针的单向链表
B.仅设头指针的单向链表
C.仅设尾指针的单向循环链表
D.仅设头指针的单向循环链表
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

若线性表的插入和删除操作频繁地在表头或表尾位置进行,则更适宜采用的存储结构为()。

A、无头结点的双向链表

B、带尾指针的循环链表

C、无头结点的单链表

D、带头指针的循环链表


正确答案:B

第2题:

若想从链尾结点开始访问后起第j个结点,则线性表应采用哪种存储结构?()

A.顺序存储

B.单向链表

C.双向链表

D.都不是


参考答案:C

第3题:

● 若在单向链表上,除访问链表中所有结点外,还需在表尾频繁插入结点,那么采用 (31) 最节省时间。

(31)

A. 仅设尾指针的单向链表

B. 仅设头指针的单向链表

C. 仅设尾指针的单向循环链表

D. 仅设头指针的单向循环链表


正确答案:C

第4题:

若栈采用链式存储且仅设头指针,则( )时入栈和出栈操作最方便。

A.采用不含头结点的单链表且栈顶元素放在表尾结点B.采用不含头结点的单链表且栈顶元素放在表头结点C.采用含头结点的单循环链表且栈顶元素随机存放在链表的任意结点D.采用含头结点的双向链表且栈顶元素放在表尾结点


正确答案:B

第5题:

某线性表最常用的操作是在最后一个结点之后插入一个结点或删除第一个结点,故采用()存储方式最节省运算时间。

A.单链表

B.仅有头结点的单循环链表

C.双链表

D.仅有尾指针的单循环链表


参考答案:D

第6题:

单向循环链表是单向链表的一种扩充,当单向链表带有头结点时,把单向链表中尾结点的指针域由空指针改为回答;当单向链表不带头结点时,则把单向链表中尾结点的指针域由空指针改为指向()。


参考答案:头结点的指针、指向第一个结点的指针

第7题:

在一个长度为n(n>1)的带头结点的单链表head上,另设有尾指针r(指向尾结点),执行()操作与链表的长度有关。

A.删除单链表中的第一个元素

B.删除单链表中的尾结点

C.在单链表的第一个元素前插入一个新结点

D.在单链表的最后一个元素后插入一个新结点


参考答案:B

第8题:

若在单向链表上,除访问链表中所有节点外,还需在表尾频繁插入节点,那么采用()最节省时间。

A.仅设尾指针的单向链表

B.仅设头指针的单向链表

C.仪设尾指针的单向循环链表

D.仅设头指针的单向循环链表


参考答案:C
单向链表仅设头指针时,在表尾插入节点时需要遍历整个链表,时间复杂度为0(n),仅设尾指针时,在表尾插入节点的时间复杂度为0(1),但是不能访问除了尾节点之外的所有其他节点。单向循环链表仅设头指针时,在表尾插入节点时需要遍历整个链表,时间复杂度为0(n),仅设尾指针时,在表尾插入节点的时间复杂度为0(1),同时达到表头节点的时间复杂度为0(1),因此对于题中给出的操作要求,适合采用仅设尾指针的单向循环链表。

第9题:

若某链表最常用的操作是在最后一个结点之后插入一个结点和删除最后一个结点,则采用______存储方式最节省时间。

A.单链表

B.双链表

C.单循环链表

D.带头结点的双循环链表


正确答案:D

第10题:

设head1和p1分别是不带头结点的单向链表A的头指针和尾指针,head2和p2分别是不带头结点的单向链表B的头指针和尾指针,若要把B链表接到A链表之后,得到一个以head1为头指针的单向循环链表。单向链表的链域为next,设指针p指向单向链表中的某个结点,指针s指向一个要插入链表的新结点,现要把s所指结点插入p所指结点之后,某学生采用以下语句:p->next=s;s->next=p->next;这样做正确吗?若正确则回答正确,若不正确则说明应如何改写?


正确答案:不对,s->next=p->next;p->next=s;

更多相关问题