List Merge(List L1,List L2){
List p1=L1->Next;
List p2=L2->Next;
List L = (List)malloc(sizeof(struct Node));
List p=L;
while(p1!=NULL&&p2!=NULL){
if(p1->Data<p2->Data){
p->Next=p1;
p1=p1->Next;
}
else{
p->Next=p2;
p2=p2->Next;
}
p=p->Next;
}
p->Next=NULL;
if(p1) p->Next=p1;
if(p2) p->Next=p2;
L1->Next=NULL;
L2->Next=NULL;
return L;
}
两个有序链表合并成一个非递减的链表函数
最新推荐文章于 2022-11-05 14:43:01 发布
本文详细解析了链表合并算法的实现过程,通过一个具体的函数ListMerge,展示了如何将两个有序链表合并成一个有序链表。算法首先创建一个新的空链表,然后比较两个输入链表的元素,将较小的元素添加到新链表中,直至一个链表遍历完毕,再将另一个链表剩余部分直接连接到新链表末尾。

1446

被折叠的 条评论
为什么被折叠?



