在一个长度为n(n>1)的带头结点单链表h上,另设有尾指针r(指向尾结点)。与链表的长度有关的操作是()。A.删除单链表中的第一个元素 B.删除单链表中的最后一个元素 C.在单链表第一个元素前插入一个新元素 D.在单链表最后一个元素后插入一个新元素

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

A.删除单链表中的第一个元素
B.删除单链表中的最后一个元素
C.在单链表第一个元素前插入一个新元素
D.在单链表最后一个元素后插入一个新元素

相似考题
更多“在一个长度为n(n>1)的带头结点单链表h上,另设有尾指针r(指向尾结点)。与链表的长度有关的操作是()。”相关问题
  • 第1题:

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

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

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

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

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


    参考答案:A

  • 第2题:

    程序中已构成如下图所示的不带头结点的单向链表结构,指针变量s、P、q、均已正确定义,并用于指向链表结点,指针变量s总是作为头指针指向链表的第一个结点。

    该程序段实现的功能是( )。

    A.首结点成为尾结点

    B.尾结点成为首结点

    C.删除首结点

    D.删除尾结点


    正确答案:A
    循环找到末尾结点,然后赋值给第一个结点,所以选择A)。

  • 第3题:

    用不带头结点的单链表存储队列,其头指针指向队头结点,尾指针指向队尾结点,则在进行出队操作时()。

    • A、仅修改队头指针
    • B、仅修改队尾指针
    • C、队头、队尾指针都可能要修改
    • D、队头、队尾指针都要修改

    正确答案:C

  • 第4题:

    设rear是指向非空、带头结点的循环单链表的尾指针,则该链表首结点的存储位置是()


    正确答案:rear->next->next

  • 第5题:

    设有一个头指针为head的单向循环链表,p指向链表中的结点,若p->next=(),则p所指结点为尾结点。


    正确答案:head

  • 第6题:

    设有一个不带头结点的单向循环链表,结点的指针域为next,指针p指向尾结点,现要使p指向第一个结点,可用语句()。


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

  • 第7题:

    设有一个不带头结点的单向链表,头指针为head,结点类型为NODE,每个结点包含一个数据域data和一个指针域next,该链表有两个结点,p指向第二个结点(尾结点),按以下要求写出相应语句。已知p1指向另一个新结点,把它插入到p所指结点和尾结点之间。


    正确答案: P1->next=p->next;
    P->next=p1;

  • 第8题:

    设有一个不带头结点的单向链表,头指针为head,结点类型为NODE,每个结点包含一个数据域data和一个指针域next,该链表有两个结点,p指向第二个结点(尾结点),按以下要求写出相应语句。把该结点插入链表的尾部,释放指针s的指向。


    正确答案: P->next=s;
    S->next=NULL;
    free(s)

  • 第9题:

    在一个带头结点的单循环链表中,P指向尾结点的直接前驱,则指向头结点的指针head可用P表示为head=()。


    正确答案:p->next->next

  • 第10题:

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

    正确答案: p->next=head
    解析: 暂无解析

  • 第11题:

    填空题
    设有一个不带头结点的单向循环链表,结点的指针域为next,指针p指向尾结点,现要使p指向第一个结点,可用语句()。

    正确答案: p=p->next
    解析: 暂无解析

  • 第12题:

    单选题
    在一个长度为n(n>1)的单链表上,设有头和尾两个指针,执行(  )操作与链表的长度有关。
    A

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

    B

    删除单链表中的最后一个元素

    C

    在单链表第一个元素前插入一个新元素

    D

    在单链表最后一个元素后插入一个新元素


    正确答案: D
    解析:

  • 第13题:

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

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

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

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

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


    参考答案:B

  • 第14题:

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

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

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

  • 第15题:

    在一个长度为n(n>1)的单链表上,设有头和尾两个指针,执行()操作与链表的长度有关。

    • A、删除单链表中的第一个元素
    • B、删除单链表中的最后一个元素
    • C、在单链表第一个元素前插入一个新元素
    • D、在单链表最后一个元素后插入一个新元素

    正确答案:B

  • 第16题:

    设有一个不带头结点的单向链表,头指针为head,结点类型为NODE,每个结点包含一个数据域data和一个指针域next,该链表有两个结点,p指向第二个结点(尾结点),按以下要求写出相应语句。新开辟一个结点,使指针s指向该结点,结点的数据成员data赋值为1。


    正确答案:s=(NODE*)malloc(sizeof(NODE));s->data=1;

  • 第17题:

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


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

  • 第18题:

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


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

  • 第19题:

    设有一个不带头结点的单向链表,头指针为head,结点类型为NODE,每个结点包含一个数据域data和一个指针域next,该链表有两个结点,p指向第二个结点(尾结点),按以下要求写出相应语句。删除链表的第一个结点。


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

  • 第20题:

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

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

    正确答案:D

  • 第21题:

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

    单链表

    B

    单循环链表

    C

    带尾指针的单循环链表

    D

    带头结点的双循环链表


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

  • 第22题:

    问答题
    设有一个不带头结点的单向链表,头指针为head,结点类型为NODE,每个结点包含一个数据域data和一个指针域next,该链表有两个结点,p指向第二个结点(尾结点),按以下要求写出相应语句。把该结点插入链表的尾部,释放指针s的指向。

    正确答案: P->next=s;
    S->next=NULL;
    free(s)
    解析: 暂无解析

  • 第23题:

    填空题
    设rear是指向非空、带头结点的循环单链表的尾指针,则该链表首结点的存储位置是()

    正确答案: rear->next->next
    解析: 暂无解析