質問編集履歴
2
失礼しました。できる限り詳しく詳細記入しました。
test
CHANGED
File without changes
|
test
CHANGED
@@ -6,6 +6,20 @@
|
|
6
6
|
|
7
7
|
|
8
8
|
|
9
|
+
insertionSort、またはmergeSortメソッドに
|
10
|
+
|
11
|
+
配列を入れると、正しくソートはしてくれますが、要素が多いと動きがとてつもなく遅くなります。
|
12
|
+
|
13
|
+
そこで、その2つのメソッドを利用したTimSortアルゴリズムを書きたいのですが、どのタイミングで何をどのメソッドに入れれば良いかが全く分かりません。
|
14
|
+
|
15
|
+
|
16
|
+
|
17
|
+
配列の長さが100だとすると、それを、50、25、12、という風に長さが10以下になるまではmergeSortを、
|
18
|
+
|
19
|
+
それ以降はinsertionSortを利用したいです。
|
20
|
+
|
21
|
+
|
22
|
+
|
9
23
|
```java
|
10
24
|
|
11
25
|
|
1
不明な点、追記しました
test
CHANGED
File without changes
|
test
CHANGED
@@ -412,21 +412,7 @@
|
|
412
412
|
|
413
413
|
{
|
414
414
|
|
415
|
-
|
415
|
+
//このメソッド内の仕事が分かりません。
|
416
|
-
|
417
|
-
|
418
|
-
|
419
|
-
if (left + run < data.length)
|
420
|
-
|
421
|
-
{
|
422
|
-
|
423
|
-
insertionSortRange(data, left + 1, left + run - 1);
|
424
|
-
|
425
|
-
mergeSortHelper(data, left, right);
|
426
|
-
|
427
|
-
timSortHelper(data, left + run, right + run);
|
428
|
-
|
429
|
-
}
|
430
416
|
|
431
417
|
}
|
432
418
|
|