1.将两个递增的有序链表合并为一个递增的有序链表。要求结果链表仍使用原来两个链表的存储空间,不另外占用其他的存储空间。表中不允许有重复的元素。


  1.这两个递增的链表都是有头节点的。

   2.当有两个互相比较完之后还有剩余的情况,直接链接剩余的。因为剩余的本身递增,本身没有重复的元素,不需要处理

void MeregeList(Linklist &La,LinkList &Lb,LinkLinst &Lc)
{
    pa=La->next;pb=Lb->next;
    Lc=pc=la;
    while(pa&&pb)
{    
    if(pa->data < pb->data){pc->next=pa;pc=pa;pa=pa->next;}
    else if(pa->data >pb->data){pc->next=pb;pc=pb;pb=pb->next;}
    else{
    pc->next=pa;pc=pa;pa=pa->next;
    q=pb->next;delete pb;pb=q}
    }
pc->next=pa?pa:pb;
    delete Lb;
}

  


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM