兩個有序鍊錶序列的合併 20 分

2021-10-20 00:19:29 字數 1096 閱讀 6648

已知兩個非降序鍊錶序列s1與s2,設計函式構造出s1與s2合併後的新的非降序鍊錶s3。

輸入格式:

輸入分兩行,分別在每行給出由若干個正整數構成的非降序序列,用−1表示序列的結尾(−1不屬於這個序列)。數字用空格間隔。

輸出格式:

在一行中輸出合併後新的非降序鍊錶,數字間用空格分開,結尾不能有多餘空格;若新鍊錶為空,輸出null。

輸入樣例:

1 3 5 -1

2 4 6 8 10 -1

輸出樣例:

1 2 3 4 5 6 8 10
題目思路:常規建立鍊錶思路。當然,這道題還能使用vector容器解決,更加快捷。後續有時間再寫一篇部落格發出來。

#include

using

namespace std;

typedef

struct node list;

list*

creat()

;list*

sort

(list* l1, list* l2)

;void

print

(list* l)

;void

delete

(list* l)

;int

main()

list*

creat()

return head;

}void

print

(list* l)

}else

cout <<

"null";

cout << endl;

}void

delete

(list* l)

}list*

sort

(list* l1, list* l2)

else

} pc-

>next = pa ? pa : pb;

return l3;

}

兩個有序鍊錶序列的合併 (20 分)

7 90 兩個有序鍊錶序列的合併 20 分 已知兩個非降序鍊錶序列s1與s2,設計函式構造出s1與s2合併後的新的非降序鍊錶s3。輸入分兩行,分別在每行給出由若干個正整數構成的非降序序列,用 1表示序列的結尾 1不屬於這個序列 數字用空格間隔。在一行中輸出合併後新的非降序鍊錶,數字間用空格分開,結尾...

5 51 兩個有序鍊錶序列的合併 20分

5 51 兩個有序鍊錶序列的合併 20分 已知兩個非降序鍊錶序列s1與s2,設計函式構造出s1與s2的並集新非降序鍊錶s3。輸入分兩行,分別在每行給出由若干個正整數構成的非降序序列,用 1 1 表示序列的結尾 1 1 不屬於這個序列 數字用空格間隔。在一行中輸出合併後新的非降序鍊錶,數字間用空格分開...

5 51 兩個有序鍊錶序列的合併(20分)

已知兩個非降序鍊錶序列s1與s2,設計函式構造出s1與s2的並集新非降序鍊錶s3。輸入分兩行,分別在每行給出由若干個正整數構成的非降序序列,用 1 1 表示序列的結尾 1 1 不屬於這個序列 數字用空格間隔。在一行中輸出合併後新的非降序鍊錶,數字間用空格分開,結尾不能有多餘空格 若新鍊錶為空,輸出n...