带头结点
void split(LNODE *h,LNODE **h1,LNODE **h2)//
{
LNODE *r;//尾插法用来记住h1指向链表的最后一个节点;
LNODE *p = h->next,*q;//p用来指向当前处理节点。
*h2 = malloc(sizeof(LNODE));
(*h2)->next = NULL;
*h1 = h;
r = *h1;
while (p)
{
r->next = p;
r = p;
p = p->next;
q = p->next;
p->next = (*h2)->next;
(*h2)->next = p;
p = q;
}
r->next = NULL;
}
拆分单链表(a1,b1,a2,b2....an,bn)=(a1,...an)+(bn,...b1)
最新推荐文章于 2020-03-04 17:36:26 发布