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