两个有序链表合并成一个非递减的链表函数

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->DataData){
            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;
}

你可能感兴趣的:(两个有序链表合并成一个非递减的链表函数)