回答編集履歴

1

コード追記

2021/02/12 16:34

投稿

teamikl
teamikl

スコア8664

test CHANGED
@@ -3,3 +3,55 @@
3
3
 
4
4
 
5
5
  マージソートであれば [標準ライブラリの heapq.merge](https://docs.python.org/ja/3/library/heapq.html) が使えます。
6
+
7
+
8
+
9
+ ```python
10
+
11
+
12
+
13
+ import heapq
14
+
15
+
16
+
17
+ listA = [0, 1, 2, 3, 5, 6]
18
+
19
+ listB = [4, 7]
20
+
21
+
22
+
23
+ for num in heapq.merge(listA, listB):
24
+
25
+ print("{:03}".format(num))
26
+
27
+ ```
28
+
29
+
30
+
31
+ ```
32
+
33
+ 000
34
+
35
+ 001
36
+
37
+ 002
38
+
39
+ 003
40
+
41
+ 004
42
+
43
+ 005
44
+
45
+ 006
46
+
47
+ 007
48
+
49
+ ```
50
+
51
+
52
+
53
+ 因みに、リストにファイル内容を全て読み込まなくても、
54
+
55
+ heapq.mergeにファイル・オブジェクトを渡すことで
56
+
57
+ ファイルを読みながら結合できます。(但し、対象とするデータはソート済のものに限ります)