数据结构

在双向链表中每个结点包含有两个指针域,一个指向其()结点,另一个指向其()结点。

题目

在双向链表中每个结点包含有两个指针域,一个指向其()结点,另一个指向其()结点。

如果没有搜索结果,请直接 联系老师 获取答案。
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

在双链表中,每个结点有两个指针域,一个指向前驱结点,另一个指向上【 】。


正确答案:后续结点(后继结点)
后续结点(后继结点) 解析:链式存储结构的结点中,只有一个指示直接后继的指针域,由此从某个点出发,只能顺指针往后寻查其他结点。若要寻查结点的直接前驱,则需要从表头指针出发,影响查找效率。为了克服单链表这种单向性的缺点,可利用双向链表。双向链表的结点中,有两个指针域,其一指向直接后继,另一个指向直接前驱。

第2题:

在双向链表中,每个结点都含有两个指针域,它们一个指向其前驱结点,另一个指向其【】 结点


正确答案:后继
双向链表中,一个指针指向前驱或前件,一个指针指向后继或后件。

第3题:

在单链表中,存储每个结点需要有两个域,一个是数据域,另一个是指针域,指针域指向该结点的【】

A.直接前趋

B.直接后继

C.开始结点

D.终端结点


正确答案:B
[解析]单链表的一个存储结点包含dat.和 next两个部分,其中,data部分称为数据域,用于存储线性表的一个数据元素,next部分称为指针域或链域,用于存放一个指针,该指针指向本结点所含数据元素的直接后继所在的结点.

第4题:

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

第5题:

要在一个单向链表中删除p所指向的结点,已知q指向p所指结点的直接前驱结点,若链表中结点的指针域为next,则可执行()。
q->next=p->next;

第6题:

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

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

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

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

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


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

第7题:

双向链表中有两个指针域llink和rlink,分别指向前驱和后继,设β指向表中的一个结点,q指向一待插入结点,现要求在p前插入q,则正确的插人为()。


答案:D
解析:
p→llink→rlink=q;q→rlink=p;q→llink=p→llink;p→llink=q

第8题:

已知p指向双向循环链表中的一个结点,其结点结构为data、prior、next三个域,写出算法change(p),交换p所指向的结点和它的前缀结点的顺序。


参考答案:
  知道双向循环链表中的一个结点,与前驱交换涉及到四个结点(p结点,前驱结点,前驱的前驱结点,后继结点)六条链。
  [算法描述]
  void Exchange(LinkedList p)
  ∥p是双向循环链表中的一个结点,本算法将p所指结点与其前驱结点交换。
  {q=p->llink;
  q->llink->rlink=p; ∥p的前驱的前驱之后继为p
  p->llink=q->llink; ∥p的前驱指向其前驱的前驱。
  q->rlink=p->rlink; ∥p的前驱的后继为p的后继。
  q->llink=p; ∥p与其前驱交换
  p->rlink->llink=q; ∥p的后继的前驱指向原p的前驱
  p->rlink=q; ∥p的后继指向其原来的前驱
  }∥算法exchange结束。

第9题:

在双向链表中,每个结点有两个指针域,一个指向(),另一个指向()。
结点的直接后继;结点的直接前驱

第10题:

在循环双向链表中表头结点的左指针域指向()结点,最后一个结点的右指针域指向()结点。


正确答案:表尾;表头

更多相关问题