两个长度为n的双链表,节点类型相同,若以h1为头指针的双链表是非循环的,以h2为头指针指针的双链表是循环的,则()。A.对于非循环双链表来说,删除首节点的操作,其时间复杂度都是O(n)B.对于循环双链表来说,删除首节点的操作,其时间复杂度都是O(n)C.对于非循环双链表来说,删除尾节点的操作,其时间复杂度都是O(1)D.对于循环双链表来说,删除尾节点的操作,其时间复杂度都是O(1)

两个长度为n的双链表,节点类型相同,若以h1为头指针的双链表是非循环的,以h2为头指针指针的双链表是循环的,则()。

A.对于非循环双链表来说,删除首节点的操作,其时间复杂度都是O(n)

B.对于循环双链表来说,删除首节点的操作,其时间复杂度都是O(n)

C.对于非循环双链表来说,删除尾节点的操作,其时间复杂度都是O(1)

D.对于循环双链表来说,删除尾节点的操作,其时间复杂度都是O(1)


参考答案和解析
D

相关考题:

● 若在单向链表上,除访问链表中所有结点外,还需在表尾频繁插入结点,那么采用 (31) 最节省时间。(31)A. 仅设尾指针的单向链表B. 仅设头指针的单向链表C. 仅设尾指针的单向循环链表D. 仅设头指针的单向循环链表

若在单向链表上,除访问链表中所有节点外,还需在表尾频繁插入节点,那么采用()最节省时间。 A.仅设尾指针的单向链表B.仅设头指针的单向链表C.仪设尾指针的单向循环链表D.仅设头指针的单向循环链表

若线性表的插入和删除操作频繁地在表头或表尾位置进行,则更适宜采用的存储结构为()。 A、无头结点的双向链表B、带尾指针的循环链表C、无头结点的单链表D、带头指针的循环链表

如果对线性表的操作只有两种,即删除第一个元素,在最后一个元素的后面插入新元素,则最好使用()。A.只有表头指针没有表尾指针的循环单链表B.只有表尾指针没有表头指针的循环单链表C.非循环双链表D.循环双链表

若某线性表中最常用的操作是在最后一个元素之前插入和删除元素,则采用______最节省运算时间。A.单链表B.仅有头指针的单循环链表C.仅有尾指针的单循环链表D.双链表

如果对线性表的运算只有4种,即删除第一个元素,删除最后一个元素,在第一个元素面前插入新元素,在最后一个元素的后面插入新元素,则最好使用( )。A.只有表尾指针没有表头指针的循环单链表B.只有表尾指针没有表头指针的非循环双链表C.只有表头指针没有表尾指针的循环双链表D.既有表头指针也有表尾指针的循环单链表

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

完善算法:已知单链表结点类型为:函数create建立以head为头指针的单链表。

带有头结点的单循环链表的头指针为head,则该链表为空的判定条件是()。A、head==NULB、head-next==NULLC、head!=NULLD、head-next==head

在长度为n的()上删除第一个元素,其算法的时间复杂度为O(n)。 A.只有表头指针的不带表头结点的循环单链表B.只有表尾指针的不带表头结点的循环单链表C.只有表尾指针的带表头结点的循环单链表D.只有表头指针的带表头结点的循环单链表

在链表结构中,采用(59)可以用最少的空间代价和最高的时间效率实现队列结构。A.仅设置尾指针的单向循环链表B.仅设置头指针的单向循环链表C.仅设置尾指针的双向链表D.仅设置头指针的双向链表

性表中最常用的操作是在最后一个元素之后插入一个元素和删除第一个元素,则采用(5)存储方式最节省运算时间。A.单链表B.仅有头指针的单循环链表C.双链表D.仅有尾指针的单循环链表

若在单向链表上,除访问链表中所有结点外,还需在表尾频繁插入结点,那么采用( )最节省时间。A.仅设尾指针的单向链表B.仅设头指针的单向链表C.仅设尾指针的单向循环链表D.仅设头指针的单向循环链表

在长度为n(Il>1)的()上,删除第一个元素.其时间复杂度为O(n)。A.只有首结点指针的不带头结点的循环单链表B.只有尾结点指针的不带头结点的循环单链表C.只有尾结点指针的带头结点的循环单链表D.只有头结点的循环单链表

若在单向链表上,除访问链表中所有节点外,还需在表尾频繁插入节点,那么采用()最节省时间。A、仅设尾指针的单向链表B、仅设头指针的单向链表C、仪设尾指针的单向循环链表D、仅设头指针的单向循环链表

某线性表中最常用的操作是在最后一个元素之后插入一个元素和删除第一个元素,则采用()存储方式最节省运算时间。A、单链表B、仅有头指针的单循环链表C、双链表D、仅有尾指针的单循环链表

设长度为n的链队用单循环链表表示,若设头指针,则入队出队操作的时间为何?若只设尾指针呢?

用循环链表表示的队列长度为n,若只设头指针,则出队和入队的时间复杂度分别是()和()。

设head1和p1分别是不带头结点的单向链表A的头指针和尾指针,head2和p2分别是不带头结点的单向链表B的头指针和尾指针,若要把B链表接到A链表之后,得到一个以head1为头指针的单向循环链表。写出其中两个关键的赋值语句(不用完整程序,结点的链域为next)。

设有一个单向循环链表,头指针为head,链表中结点的指针域为next,p指向尾结点的直接前驱结点,若要删除尾结点,得到一个新的单向循环链表,可执行操作()。

设有一个单向链表,结点的指针域为next,头指针为head,p指向尾结点,为了使该单向链表改为单向循环链表,可用语句()。

要在一个带头结点的单向循环链表中删除头结点,得到一个新的不带头结点的单向循环链表,若结点的指针域为next,头指针为head,尾指针为p,则可执行head=head-next;()。

在单链表、双链表和单循环表中,若仅知道指针p指向某结点,不知道头指针,能否将结点*p从相应的链表中删去?若可以,其时间复杂度各为多少?

如果对线性表的操作只有两种,即删除第一个元素,在最后一个元素的后面插入新元素,则最好使用()。A、只有表头指针没有表尾指针的循环单链表B、只有表尾指针没有表头指针的循环单链表C、非循环双链表D、循环双链表

单选题以下说法中不正确的是()。A双向循环链表中每个结点需要包含两个指针域B已知单向链表中任一结点的指针就能访问到链表中每个结点C顺序存储的线性链表是可以随机访问的D单向循环链表中尾结点的指针域中存放的是头指针

填空题设有一个单向链表,结点的指针域为next,头指针为head,p指向尾结点,为了使该单向链表改为单向循环链表,可用语句()。

问答题设head1和p1分别是不带头结点的单向链表A的头指针和尾指针,head2和p2分别是不带头结点的单向链表B的头指针和尾指针,若要把B链表接到A链表之后,得到一个以head1为头指针的单向循环链表。写出其中两个关键的赋值语句(不用完整程序,结点的链域为next)。

问答题设长度为n的链队用单循环链表表示,若设头指针,则入队出队操作的时间为何?若只设尾指针呢?