本題要求實現乙個合併兩個有序鍊錶的簡單函式。鍊錶結點定義如下:
struct listnode ;
struct listnode *mergelists(struct listnode *list1, struct listnode *list2);
其中list1和list2是使用者傳入的兩個按data公升序鏈結的鍊錶的頭指標;函式mergelists將兩個鍊錶合併成乙個按data公升序鏈結的鍊錶,並返回結果鍊錶的頭指標。
#include
#include
struct listnode
;struct listnode *
createlist()
;/*裁判實現,細節不表*/
struct listnode *
mergelists
(struct listnode *list1,
struct listnode *list2)
;void
printlist
(struct listnode *head )
printf
("\n");
}int
main()
135
7-12
46-1
123
4567
struct listnode *
mergelists
(struct listnode *list1,
struct listnode *list2)
else p=p->next;
}//將兩個鍊錶連在一起
p=list1;
int a[
999]
;while
(p)for
(i=0
;i} p=list1;
while
(p)}
return list1;
}
6 25 鍊錶拼接 20 分
原題鏈結 題目的大意是給定兩個公升序單鏈表,合併成要給鍊錶,合併後仍然公升序,題目要求實現的是mergelist 函式。資料結構中講歸併排序的鍊錶實現時,其中的乙個步驟就是合併鍊錶。include include struct listnode struct listnode createlist ...
6 4 鍊錶拼接 20分
正確作答出這個程式前,發現測試點老是段錯誤或者執行超時,心態 然後準備csdn上面copy一手,誰都不愛。結果發現自己能力有限,沒法短時間消化其他大佬的 於是搞出了自認為較為通俗易懂的 當然,本篇的通過 或許有進步空間,還請各位讀者不吝賜教 本題要求實現乙個合併兩個有序鍊錶的簡單函式。鍊錶結點定義如...
實驗11 2 5 鍊錶拼接 (20 分)
實驗11 2 5 鍊錶拼接 20 分 本題要求實現乙個合併兩個有序鍊錶的簡單函式。鍊錶結點定義如下 struct listnode 函式介面定義 struct listnode mergelists struct listnode list1,struct listnode list2 其中list...