兩個遞增有序的單鏈表合併
問題描述:已知兩個單鏈表均已遞增有序,試將他們合併成乙個鍊錶,保持其有序性。
問題分析:依次比對鍊錶的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指標後移 ...