单向链表中往往含有一个头结点,该结点不存储数据元素,一般令链表的头指针指向该结点,而该结点指针域的值为第一个元素结点的指针。以下关于单链表头结点的叙述中,错误的是( )。A.若在头结点中存入链表长度值,则求链表长度运算的时间复杂度为O(1)B.在链表的任何一个元素前后进行插入和删除操作可用一致的方式进行处理C.加入头结点后,代表链表的头指针不因为链表为空而改变D.加入头结点后,在链表中进行查找运算的时问复杂度为O(1)

题目

单向链表中往往含有一个头结点,该结点不存储数据元素,一般令链表的头指针指向该结点,而该结点指针域的值为第一个元素结点的指针。以下关于单链表头结点的叙述中,错误的是( )。

A.若在头结点中存入链表长度值,则求链表长度运算的时间复杂度为O(1)

B.在链表的任何一个元素前后进行插入和删除操作可用一致的方式进行处理

C.加入头结点后,代表链表的头指针不因为链表为空而改变

D.加入头结点后,在链表中进行查找运算的时问复杂度为O(1)


相似考题
更多“单向链表中往往含有一个头结点,该结点不存储数据元素,一般令链表的头指针指向该结点,而该结点指 ”相关问题
  • 第1题:

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

  • 第2题:

    假设在长度大于1的循环单链表中,既无头结点也无头指针,p为指向该链表中某个结点的指针,编写一个算法删除该结点的前驱结点。


    status DeleteNode( ListNode *s) { //删除单循环链表中指定结点的直接前趋结点 ListNode *p, *q; p=s; while( p->next->next!=s) { q=p; p=p->next; } q->next=s; //删除结点 free(p); //释放空间 return OK; }

  • 第3题:

    4、假设在长度大于1的循环单链表中,既无头结点也无头指针,p为指向该链表中某个结点的指针,编写一个算法删除该结点的前驱结点


    status DeleteNode( ListNode *s) { //删除单循环链表中指定结点的直接前趋结点 ListNode *p, *q; p=s; while( p->next->next!=s) { q=p; p=p->next; } q->next=s; //删除结点 free(p); //释放空间 return OK; }

  • 第4题:

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

  • 第5题:

    7、假设在长度大于1的循环单链表中,既无头结点也无头指针,p为指向该链表中某个结点的指针,编写一个算法删除该结点的前驱结点。


    status DeleteNode( ListNode *s) { //删除单循环链表中指定结点的直接前趋结点 ListNode *p, *q; p=s; while( p->next->next!=s) { q=p; p=p->next; } q->next=s; //删除结点 free(p); //释放空间 return OK; }