更多“5.在具有头结点的单链表中,头指针指向链表的第一个数据结点(的存储位置)。”相关问题
  • 第1题:

    在具有头结点的单链表中,头指针不是指向链表的第一个数据结点。()

    此题为判断题(对,错)。


    参考答案:正确

  • 第2题:

    对于单链表表示法,以下说法正确的是()

    A指向链表的第一个结点的指针,称为头指针

    B单链表的每一个结点都被一个指针所指

    C任何结点只能通过指向它的指针才能引用

    D尾指针变量具标识单链表的作用,故常用尾指针变量来命名单链表


    参考答案:ABC

  • 第3题:

    对于单链表存储结构,以下说法错误的是()

    A.一个结点的数据域用于存放线性表的一个数据元素

    B.一个结点的指针域用于指向下一个数据元素的结点

    C.单链表必须带有头结点

    D.单链表中的所有结点可以连续存放,也可以不连续存放


    参考答案:C

  • 第4题:

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

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

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

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

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


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

  • 第5题:

    在单链表中,增加头结点的目的是( )。A.方便运算的实现B.使单链表至少有一个结点

    在单链表中,增加头结点的目的是( )。

    A.方便运算的实现

    B.使单链表至少有一个结点

    C.标识表结点中首结点的位置

    D.说明单链表是线性的链式存储实现


    正确答案:A
    根据单位链表(包含头结点)的结构,只要掌握了表头,就能够访问整个链表,因此增加头结点的目的是为了便于运算的实现。

  • 第6题:

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

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


    正确答案:B

  • 第7题:

    单链表形式的队列,头指针F指向队列的第一个结点,尾指针R指向队列的最后一个节点。


    正确答案:正确

  • 第8题:

    在具有头结点的单链表中,头指针指向链表的第一个数据结点。


    正确答案:错误

  • 第9题:

    在单链表中,头指针的作用是()

    • A、方便运算的实现
    • B、用于标识单链表
    • C、使单链表中至少有一个结点
    • D、用于标识首结点位置

    正确答案:B

  • 第10题:

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


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

  • 第11题:

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


    正确答案:1.单链表。当我们知道指针p指向某结点时,能够根据该指针找到其直接后继,但是由于不知道其头指针,所以无法访问到p指针指向的结点的直接前趋。因此无法删去该结点。
    2.双链表。由于这样的链表提供双向链接,因此根据已知结点可以查找到其直接前趋和直接后继,从而可以删除该结点。其时间复杂度为O(1)。
    3.单循环链表。根据已知结点位置,我们可以直接得到其后相邻的结点位置(直接后继),又因为是循环链表,所以我们可以通过查找,得到p结点的直接前趋。因此可以删去p所指结点。其时间复杂度应为O(n)。

  • 第12题:

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

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

  • 第13题:

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


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

  • 第14题:

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

    A.单链表

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

    C.双链表

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


    参考答案:D

  • 第15题:

    在带头结点的非空单链表中,头结点的位置由()指示,首元结点的存储位置由()指示,除首元结点外,其它任一元素结点的存储位置由()指示。

    A.头指针

    B.头结点的指针域的指针

    C.前驱结点的指针域的指针


    参考答案:A,B,C

  • 第16题:

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

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

    A.首结点成为尾结点

    B.尾结点成为首结点

    C.删除首结点

    D.删除尾结点


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

  • 第17题:

    在单链表中,增加头结点的目的是( )。 A.方便运算的实现B.使单链表至少有一个结点SXB

    在单链表中,增加头结点的目的是( )。

    A.方便运算的实现

    B.使单链表至少有一个结点

    C.标识表结点中首结点的位置

    D.说明单链表是线性表的链式存储实现


    正确答案:A
    A。【解析】头结点不仅标识了表中首结点的位置,而且根据单链表(包含头结点)的结构,只要掌握了表头,就能够访问整个链表,因此增加头结点的目的是为了便于运算的实现。

  • 第18题:

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

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

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

  • 第19题:

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

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

    正确答案:C

  • 第20题:

    编写程序,将若干整数从键盘输入,以单链表形式存储起来,然后计算单链表中结点的个数(其中指针P指向该链表的第一个结点)。


    正确答案: 编写C程序如下(已上机通过):
    全局变量及函数提前说明:
    ---------------------------------
    #include
    #include
    typedefstructliuyu{intdata;structliuyu*link;}test;
    liuyu*p,*q,*r,*head;
    intm=sizeof(test);
    voidmain()/*第一步,从键盘输入整数,不断添加到链表*/
    {inti;
    head=(test*)malloc(m);/*m=sizeof(test);*/
    p=head;i=0;
    while(i!=-9999)
    {printf("/ninputaninteger[stopby’-9999’]:");
    scanf("%d",&i);
    p->data=i;/*inputdataissaved*/
    p->link=(test*)malloc(m);/*m=sizeof(test));*/
    q=p;
    p=p->link;
    }
    q->link=NULL;/*原先用p->link=NULL似乎太晚!*/
    p=head;i=0;/*统计链表结点的个数并打印出来*/
    while(p->link!=NULL)
    {printf("%d",p->datA.;
    p=p->link;
    i++;
    }
    printf("/nnodenumber=%d/n",i-1);/*结点的个数不包括-9999*/
    }

  • 第21题:

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


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

  • 第22题:

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


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

  • 第23题:

    在单链表中,除了头结点以外,任一结点的存储位置由()指示。


    正确答案:其前趋结点的指针域

  • 第24题:

    判断题
    在具有头结点的单链表中,头指针指向链表的第一个数据结点。
    A

    B


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