编写算法,实现带头结点单链表的逆置算法。
第1题:
第2题:
在具有n个结点的单链表中,实现()的操作,其算法的时间复杂度是O。
A.求链表的第i个结点
B.在地址为P的结点之后插入一个结点
C.删除表头结点
D.删除地址为P的结点的后继结点
第3题:
第4题:

第5题:

第6题:
函数实现单链表的删除算法,请在空格处将算法补充完整。

(1)p->next!=NULL(2)p->next=q->next
第7题:
第8题:
设一个带头结点的单向链表的头指针为head,设计算法,将链表的记录,按照data域的值递增排序。
第9题:
编写算法,将一个头指针为head不带头结点的单链表改造为一个单向循环链表,并分析算法的时间复杂度。
第10题:
第11题:
第12题:
第13题:
第14题:
完善算法:已知单链表结点类型为:

函数create建立以head为头指针的单链表。

第15题:
A.只有表头指针的不带表头结点的循环单链表
B.只有表尾指针的不带表头结点的循环单链表
C.只有表尾指针的带表头结点的循环单链表
D.只有表头指针的带表头结点的循环单链表
第16题:
第17题:
编写实现链表排序的一种算法。说明为什么你会选择用这样的方法?
第18题:
第19题:
下列是用头插法建立带头结点的且有n个结点的单向链表的算法,请在空格内填上适当的语句。 
head=p;q=p;p->next=NULL;p->next=q->next;q->next=p
略
第20题:
某带头结点的单链表的头指针head,判定该单链表非空的条件()。
第21题:
下列算法将单链表中值重复的结点删除,使所得的结果表中各结点值均不相同,试完成该算法。 void DelSameNode(LinkList L) //L是带头结点的单链表,删除其中的值重复的结点// {ListNode * p,*q,*r; p=L->next; //p初始指向开始结点// while(p){ //处理当前结点p// q=p; r=q->next; do { //删除与结点*p的值相同的结点// while(r&&r->data!=p->data){ q=r; r=r->next; } if(r){ //结点*r的值与*p的值相同,删除*r// q->next=r->next; free(r); r=(); } }while( r ); p=p->next; } }
第22题:
第23题: