タグ

関連タグで絞り込む (1)

タグの絞り込みを解除

アルゴリズムに関するmakaibitoのブックマーク (1)

  • C言語講座:マージソート

    [基数ソート]←このソース→[ビンソート] /* マージソート */ /* 今日は、マージソートについて学びます。マージ( merge )とは、混ぜるということで、マージソートでは、配列の要素を二つに分け、混ぜる直前にソートします。 マージソートでは、配列の要素をコピーする作業用配列が、重要な役割を果たします。 int temp[MAX_DATA] マージソートは、下に示すアルゴリズムで、ソートを行います。 要素が一つなら、何もせずリターン。 要素が二つなら、要素を二つに分けて作業用配列にコピーし、 小さい方を配列の先頭に戻し、大きい方を配列の末尾に戻す。 要素が三つ以上なら、要素を二つに分けて、 再帰的にマージソートを呼び出し、上の操作を行う。 再帰的なマージソートの呼び出しでは、要素数が一つになるまで、何もせず分割を続けます。再帰から戻る時、要素の大きさを比較して、小さい方から配列に戻

  • 1