voidassending(Lnode*heaD.
{Lnode*p,*q,*r,*s;
p=head->next;q=p->next;p->next=NULL;
while(q)
{r=q;q=q->next;
if(r->data<=p->datA.
{r->next=p;head->next=r;p=r;}
else
{while(!p&&r->data>p->datA.
{s=p;p=p->next;}
r->next=p;s->next=r;}
p=head->next;}
}
(简答题)
设一个带头结点的单向链表的头指针为head,设计算法,将链表的记录,按照data域的值递增排序。
正确答案
答案解析
略
相似试题
(填空题)
下面create函数的功能是建立一个带头结点的单向链表,新产生的结点总是插入在链表的末尾。单向链表的头指针作为函数值返回。请填空。
(填空题)
以下函数creatlist用来建立一个带头结点的单链表,新的结点总是插入在链表的末尾。链表的头指针作为函数值返回,链表最后一个结点的next域放入NULL,作为链表结束标志。data为字符型数据域,next为指针域。读入时字符以#表示输入结束(#不存入链表)。
(填空题)
某带头结点的单链表的头指针为head,判定该链表为空的条件是()
(填空题)
某带头结点的单链表的头指针为head,判定该链表为非空的条件是()。
(填空题)
设rear是指向非空、带头结点的循环单链表的尾指针,则该链表首结点的存储位置是()
(单选题)
已知一个不带头结点单链表的头指针为L,则在表头元素之前插入一个新结点*s的语句为:()
(简答题)
设线性表以不带头结点的单向链表存储,链表头指针为head,以下程序的功能是输出链表中各结点中的数据域data。完成程序中空格部分。
(简答题)
设线性表为(16,20,26,24),以不带头结点的单向链表存储,链表头指针为head,以下程序的功能是输出链表中各结点中的数据域data。完成程序中空格部分。
(单选题)
头指针为head的带头结点的单向循环链表,p所指向尾结点,要使该链表成为不带头结点的单向循环链表, 可执行head=head->nex;和()。