再起関数を使ってソート

ループは全て再起になります。
隣接交換法を再起を使ってプログラミングしてみました。

前田稔(Maeda Minoru)の超初心者のプログラム入門

入力データ形式と関数の説明

  1. ソースプログラムです。
    ファイル名 説明
    RecurSort.cpp 再起ソート
  2. 入力データはファイルから読み込みます。
    最初にデータ件数をタイプし、続いて件数分の整数データを空白で区切って並べます。
    5  2  5  3  1  4
    
  3. sort 関数の呼び出し形式
    t[] に格納した n 件のデータを昇順に並べ替えます。
    void    sort(int t[], int n);
    
    パラメータの説明。
    t[] 整数データが格納された配列
    n 配列に格納されているデータ件数
  4. max 関数の呼び出し形式
    t[] に格納した n 件のデータの中から一番大きい値を右端に格納します。
    void    max(int t[], int n);
    

プログラムの流れ

  1. データ件数を n とします。
    5 4 3 2 1
  2. 配列 t[n] に右端から順に大きな値を格納していきます。
    5 4 3 2 1関数に渡された最初の状態
    4 3 2 1 54 番目に一番大きな数が格納される
    3 2 1 4 53 番目に次に大きな数が格納される
    2 1 3 4 52 番目にその次に大きな数が格納される
    1 2 3 4 51 番目にその次に大きな数が格納される
  3. max() 関数は t[n] の最大の値を一番後(t[n-1]) に格納します。

超初心者のプログラム入門(C/C++)