Implementation (Part 2)
Coddyの「マージソート - DSAシリーズ」コースのレッスン 6/9。
ここでは、分割とマージを組み合わせて完全なアルゴリズムを構築します。
チャレンジ
簡単それでは、これらすべてを組み合わせて完全なアルゴリズムを完成させましょう。
整数配列を受け取り、それを昇順にソートして返す、mergeSortという名前の関数を作成してください。
配列を2つの半分に分割し、それぞれに対してmergeSortを呼び出してソート(再帰)し、その後、ソートされた2つの半分を再びマージします。要素が0個または1個の配列はすでにソートされているため、そのまま返します。
前のレッスンで作成したマージのロジックを再利用できます。
自分で試してみよう
#include <stdlib.h>
int* mergeSort(int* arr, int arr_size, int* returnSize) {
// ここにコードを書いてください
*returnSize = arr_size;
return arr;
}
このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。
マージソート - DSAシリーズのすべてのレッスン
2The Algorithm
How it works?Pseudo CodeImplementation (Part 1)Implementation (Part 2)