資料結構雜記 兩個遞增有序的單鏈表合併

2021-06-28 01:29:49 字數 492 閱讀 7844

兩個遞增有序的單鏈表合併

問題描述:已知兩個單鏈表均已遞增有序,試將他們合併成乙個鍊錶,保持其有序性。

問題分析:依次比對鍊錶的data,按序排列即可

linklist combine_linklist(linklist ahead, linklist bhead)           //ahead、bhead 分別表示兩個鍊錶的表頭結點

else

//把s節點『鏈』在c表上

pc->next=s;

pc=pc->next;

}//退出while迴圈後,意味著至少有乙個鍊錶已被遍歷完,只需把較長鍊錶的後續部分『鏈』在c表上即可

if(pa) //如果a表較長

else //如果b表較長

return c; //c 即為合併後的鍊錶

}

歡迎各位指正,你的一句話可能使我前行一大步!

謝謝!

資料結構 兩個有序單鏈表合併

尾插法建表 void createfromtail linklist l else linklist mergelinklist linklist la,linklist lb else if pa 若表la未完,剩餘元素全部新增到lc r next pa else r next pb free l...

資料結構單鏈表之合併兩個有序鍊錶筆記。

將兩個公升序鍊錶合併為乙個新的 公升序 鍊錶並返回。新煉表是通過拼接給定的兩個鍊錶的所有節點組成的。輸入 l1 1,2,4 l2 1,3,4 輸出 1,1,2,3,4,4 示例 2 輸入 l1 l2 輸出 示例 3 輸入 l1 l2 0 輸出 0 l1指向的結點值小於或者等於l2指向的結點值 則pr...

將兩個遞增的有序鍊錶合併為乙個遞增的有序鍊錶

將兩個遞增的有序鍊錶合併為乙個遞增的有序鍊錶。要求結果鍊錶仍使用原來兩個鍊錶的儲存空間,不另外占用其它的儲存空間。表中不允許有重複的資料。void mergelist linklist la,linklist lb,linklist lc 取較小者la中的元素,將pa鏈結在pc的後面,pa指標後移 ...