简答题

对链表设置头结点的作用是什么?(至少说出两条好处)

正确答案

(1)对带头结点的链表,在表的任何结点之前插入结点或删除表中任何结点,所要做的都是修改前一结点的指针域,因为任何元素结点都有前驱结点。若链表没有头结点,则首元素结点没有前驱结点,在其前插入结点或删除该结点时操作会复杂些。
(2)对带头结点的链表,表头指针是指向头结点的非空指针,因此空表与非空表的处理是一样的。

答案解析

相似试题
  • 设有一个双向循环链表,每个结点中除有pre,data和next三个域外,还增设了一个访问频度域freq。在链表被起用之前,频度域freq的值均初始化为零,而每当对链表进行一次Locate(L,x)的操作后,被访问的结点(即元素值等于x的结点)中的频度域freq的值便增1,同时调整链表中结点之间的次序,使其按访问频度非递增的次序顺序排列,以便始终保持被频繁访问的结点总是靠近表头结点。试编写符合上述要求的Locate操作的算法。

    简答题查看答案

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

    判断题查看答案

  • 下面create函数的功能是建立一个带头结点的单向链表,新产生的结点总是插入在链表的末尾。单向链表的头指针作为函数值返回。请填空。

    填空题查看答案

  • 某带头结点的单链表的头指针为head,判定该链表为空的条件是()

    填空题查看答案

  • 设head为单循环链表L的头结点,则L为空表的条件是()

    填空题查看答案

  • 某带头结点的单链表的头指针为head,判定该链表为非空的条件是()。

    填空题查看答案

  • 设一条单链表的头指针变量为head且该链表没有头结点,则不能其判空条件是()。

    多选题查看答案

  • 头指针为head的不带头结点的单向链表为空的判定条件是逻辑表达式()为真。

    单选题查看答案

  • 设一个带头结点的单向链表的头指针为head,设计算法,将链表的记录,按照data域的值递增排序。

    简答题查看答案