#jx0601. 链表

链表

单选题

第 1 题

1、双向链表的每个节点包含( )​。

{{ select(1) }}

  • 数据域和一个指针
  • 数据域和两个指针(前驱和后继)
  • 数据域和三个指针
  • 数据域和一个数组

第 2 题

2、在单链表节点 p 之后插入节点 s 的正确操作是 ( )​。

{{ select(2) }}

  • s->next = p->next; p->next = s;
  • p->next = s; s->next = p->next;
  • s->next = p; p->next = s->next;
  • p->next = s->next; s->next = p;

第 3 题

3、若要删除单链表中的节点 p,已知其前驱节点 pre,正确操作是( )。

{{ select(3) }}

  • pre->next = p->next;
  • p->next = pre->next;
  • pre->next = p;
  • p->next = NULL;

第 4 题

4、在双向链表节点 p 之后插入节点 s 的正确操作是( )。

{{ select(4) }}

  • s->prev = p; s->next = p->next; p->next = s; p->next->prev = s;
  • p->next = s; s->prev = p; s->next = p->next; p->next->prev = s;
  • s->next = p->next; p->next->prev = s; s->prev = p; p->next = s;
  • p->next = s; s->next = p->next; s->prev = p; p->next->prev = s;

第 5 题

5、删除双向链表节点 p 的正确操作是( )。

{{ select(5) }}

  • p->prev->next = p->next; p->next->prev = p->prev;
  • p->next->prev = p->prev;
  • p->prev->next = p; p->next->prev = p;
  • p->prev = p->next; p->next = p->prev;