資料結構 實驗一(兩個單鏈表合併)

2021-10-11 23:27:47 字數 722 閱讀 9618

設有兩個無頭結點的單鏈表,分別為ha,hb,其鏈中有資料域data,鏈域next,兩鍊錶的資料都按遞增序存放。現要求將hb表歸到ha表中,且歸併後ha仍按遞增排序,歸併中ha表中已有的資料若與hb相同,則hb中的資料不歸併到ha中,hb的鍊錶在演算法中不允許破壞。

兩個單鏈表合併源**

#include 

#include

#define _crt_secure_no_warnings

typedef struct lnode lnode,

* lklist;

lklist createlinklist

(int n)

return head;

}lklist mergelist

(lklist l1, lklist l2)

else

if(l1-

>data > l2-

>data)

else

l2 = l2-

>next;

} temp-

>next = l1 ? l1 : l2;

return t_head-

>next;

}void

print

(lklist l)

printf

("\n");

}int main()

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

尾插法建表 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...

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

兩個遞增有序的單鏈表合併 問題描述 已知兩個單鏈表均已遞增有序,試將他們合併成乙個鍊錶,保持其有序性。問題分析 依次比對鍊錶的data,按序排列即可 linklist combine linklist linklist ahead,linklist bhead ahead bhead 分別表示兩個鍊...

資料結構 單鏈表 合併兩個排序鍊錶 遞迴

題目 輸入兩個遞增排序的鍊錶,合併這兩個鍊錶並使新鍊錶中的結點仍使按照遞增排序的。如下 templatet struct listnode templatet class list bool pushback listnode merger listnode head listnode merger...