37、两个表长都为n、不带表头结点的单链表,结点类型都相同,头指针分别为h1与h2,且前者是循环链表,后者是非循环链表,则 _______。A.对于两个链表来说,删除首节点的操作,其时间复杂度都是O(1)B.对于两个链表来说,删除尾节点的操作,其时间复杂度都是O(n)C.循环链表要比非循环链表占用更多的内存空间D.h1和h2是不同类型的变量

题目

37、两个表长都为n、不带表头结点的单链表,结点类型都相同,头指针分别为h1与h2,且前者是循环链表,后者是非循环链表,则 _______。

A.对于两个链表来说,删除首节点的操作,其时间复杂度都是O(1)

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

C.循环链表要比非循环链表占用更多的内存空间

D.h1和h2是不同类型的变量


相似考题
更多“37、两个表长都为n、不带表头结点的单链表,结点类型都相同,头指针分别为h1与h2,且前者是循环链表,后者是非循环链表,则 _______。”相关问题
  • 第1题:

    若某线性表最常用的操作是在最后一个结点之后插入一个结点或删除最后一个结点,则采用哪一种存储结构算法的时间效率最高?()

    :A单链表

    B给出表头指针的单循环链表

    C双向链表

    D给出表尾指针的双向循环链表


    参考答案:D

  • 第2题:

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

    A.单链表

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

    C.双链表

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


    参考答案:D

  • 第3题:

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

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


    正确答案:B

  • 第4题:

    在长度为n(Il>1)的()上,删除第一个元素.其时间复杂度为O(n)。

    A.只有首结点指针的不带头结点的循环单链表
    B.只有尾结点指针的不带头结点的循环单链表
    C.只有尾结点指针的带头结点的循环单链表
    D.只有头结点的循环单链表

    答案:A
    解析:
    只有首结点指针的不带头结点的循环单链表删除第一个元素,需要遍历整个链表,因此A项的时间复杂度为O(n),BCD三项的时间复杂度都为O(1)。

  • 第5题:

    对一个循环单链表中,表尾结点的指针域与表头指针值()


    正确答案:相同

  • 第6题:

    若链表中最常用的操作是在最后一个结点之后插入一个结点和删除最后一个结点,则采用()存储方法最节省运算时间。

    • A、单链表
    • B、循环双链表
    • C、单循环链表
    • D、带尾指针的单循环链表

    正确答案:B

  • 第7题:

    设一个链表最常用的操作是在表尾插入结点和在表头删除结点,则选用下列哪种存储结构效率最高?()

    • A、 单链表
    • B、 双链表
    • C、 单循环链表
    • D、 带尾指针的单循环链表

    正确答案:D

  • 第8题:

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


    正确答案:p1->next=head2;p2->next=head1;

  • 第9题:

    设一个链表最常用的操作是在末尾插入结点和删除尾结点,则选用()最节省时间。

    • A、单链表
    • B、单循环链表
    • C、带尾指针的单循环链表
    • D、带头结点的双循环链表

    正确答案:D

  • 第10题:

    填空题
    在以HL为表头指针的带表头附加结点的单链表和循环单链表中,链表为空的条件分别为()和()。

    正确答案: HL->next==NULL,HL->next==HL
    解析: 暂无解析

  • 第11题:

    单选题
    以下说法中不正确的是()。
    A

    双向循环链表中每个结点需要包含两个指针域

    B

    已知单向链表中任一结点的指针就能访问到链表中每个结点

    C

    顺序存储的线性链表是可以随机访问的

    D

    单向循环链表中尾结点的指针域中存放的是头指针


    正确答案: C
    解析: 暂无解析

  • 第12题:

    填空题
    对一个循环单链表中,表尾结点的指针域与表头指针值()

    正确答案: 相同
    解析: 暂无解析

  • 第13题:

    在长度为n的()上删除第一个元素,其算法的时间复杂度为O(n)。

    A.只有表头指针的不带表头结点的循环单链表

    B.只有表尾指针的不带表头结点的循环单链表

    C.只有表尾指针的带表头结点的循环单链表

    D.只有表头指针的带表头结点的循环单链表


    参考答案:A

  • 第14题:

    关于循环链表与线性链表,不正确的是( )。

    A.每个结点的组成是数据域和指针域

    B.循环链表中最后一个结点的指针指向链表的第一个结点

    C.循环链表中访问指定结点的直接前驱可直接访问

    D.循环链表中的循环条件是判断当前指针是否指向头指针


    正确答案:C
    解析:循环链表从任意一结点出发可以找到表中的其他结点,但其查找方向固定,要找到其直接前趋,需要从其后继结点开始,访问完表中的所有结点指针才能完成。

  • 第15题:

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

    A.仅设尾指针的单向链表
    B.仅设头指针的单向链表
    C.仅设尾指针的单向循环链表
    D.仅设头指针的单向循环链表

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

  • 第16题:

    在以HL为表头指针的带表头附加结点的单链表和循环单链表中,链表为空的条件分别为()和()。


    正确答案:HL->next==NULL;HL->next==HL

  • 第17题:

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

    • A、单链表
    • B、给出表头指针的单循环链表
    • C、双链表
    • D、带头结点的双循环链表

    正确答案:D

  • 第18题:

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

    • A、单链表
    • B、带头指针的单循环链表
    • C、双链表
    • D、带尾指针的单循环链表

    正确答案:D

  • 第19题:

    双向循环链表的结点与单链表的结点结构相同,只是结点间的连接方式不同。


    正确答案:错误

  • 第20题:

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


    正确答案:p->next=head;

  • 第21题:

    单选题
    若某表最常用的操作是在最后一个结点之后插入一个结点或删除最后一个结点,则采用()存储方式最节省运算时间。
    A

    单链表

    B

    给出表头指针的单循环链表

    C

    双链表

    D

    带头结点的双循环链表


    正确答案: C
    解析: 暂无解析

  • 第22题:

    单选题
    设一个链表最常用的操作是在末尾插入结点和删除尾结点,则选用()最节省时间。
    A

    单链表

    B

    单循环链表

    C

    带尾指针的单循环链表

    D

    带头结点的双循环链表


    正确答案: C
    解析: 暂无解析

  • 第23题:

    单选题
    设一个链表最常用的操作是在表尾插入结点和在表头删除结点,则选用下列哪种存储结构效率最高?()
    A

     单链表

    B

     双链表

    C

     单循环链表

    D

     带尾指针的单循环链表


    正确答案: D
    解析: 暂无解析

  • 第24题:

    单选题
    若某表最常用的操作是在最后一个结点之后插入一个结点或删除最后一个结点。则采用()存储方式最节省运算时间。
    A

    单链表

    B

    双链表

    C

    带尾指针的单循环链表

    D

    带头结点的双循环链表


    正确答案: D
    解析: