(1)对带头结点的链表,在表的任何结点之前插入结点或删除表中任何结点,所要做的都是修改前一结点的指针域,因为任何元素结点都有前驱结点。若链表没有头结点,则首元素结点没有前驱结点,在其前插入结点或删除该结点时操作会复杂些。
(2)对带头结点的链表,表头指针是指向头结点的非空指针,因此空表与非空表的处理是一样的。
(简答题)
对链表设置头结点的作用是什么?(至少说出两条好处)
正确答案
答案解析
略
相似试题
(简答题)
设有一个双向循环链表,每个结点中除有pre,data和next三个域外,还增设了一个访问频度域freq。在链表被起用之前,频度域freq的值均初始化为零,而每当对链表进行一次Locate(L,x)的操作后,被访问的结点(即元素值等于x的结点)中的频度域freq的值便增1,同时调整链表中结点之间的次序,使其按访问频度非递增的次序顺序排列,以便始终保持被频繁访问的结点总是靠近表头结点。试编写符合上述要求的Locate操作的算法。
(判断题)
在具有头结点的单链表中,头指针指向链表的第一个数据结点。
(填空题)
下面create函数的功能是建立一个带头结点的单向链表,新产生的结点总是插入在链表的末尾。单向链表的头指针作为函数值返回。请填空。
(填空题)
某带头结点的单链表的头指针为head,判定该链表为空的条件是()
(填空题)
设head为单循环链表L的头结点,则L为空表的条件是()
(填空题)
某带头结点的单链表的头指针为head,判定该链表为非空的条件是()。
(多选题)
设一条单链表的头指针变量为head且该链表没有头结点,则不能其判空条件是()。
(单选题)
头指针为head的不带头结点的单向链表为空的判定条件是逻辑表达式()为真。
(简答题)
设一个带头结点的单向链表的头指针为head,设计算法,将链表的记录,按照data域的值递增排序。