合并单链表

来源:互联网 发布:网络打印机图标灰色 编辑:程序博客网 时间:2024/05/14 17:53
/*A和B是两个带头结点的单链表,其中元素递增有序。将A和B合并成一个单链表C,使得C中元素非递减。*/void Merger(LNode *&A,LNode *&B,LNode *&C){LNode *p = A->next;LNode *q = B->next;LNode *r;C=A;C->next = NULL;free(B);r=C;while(p!=NULL&&q!=NULL){if(p->data<=q->data){r->next=p;p=p->next;r=r->next;}else{r->next=q;q=q->next;r=r->next;}}r->next=NULL;if(p!=NULL){r->next=p;}if(q!=NULL){q->next=q;}}

原创粉丝点击