# sort

"クイックソート" アルゴリズムによる安定なソート (古い関数, gsort参照)

## 呼び出し手順

                [s, [k]]=sort(v)
                [s, [k]]=sort(v,'r')
                [s, [k]]=sort(v,'c')

## パラメータ

v

  実数または複素数のベクトル/行列; 疎ベクトル; 文字列ベクトル/行列

s

  実数または複素数のベクトル/行列; 疎ベクトル; 文字列ベクトル/行列

k

  整数のベクトルまたは行列

## 説明

`sort` は "バブルソートアルゴリズム"を実装します.

sort は Scilab 5.3で削除されます. gsortを参照ください.

`s=sort(v)` は `v` を 降順にソートします. `v` が行列の場合, ソートは列方向に行われ, `v`はスタックされたベクトル`v(:)` とみなされます. `[s,k]=sort(v)`は `v`の中での`s`のエントリの添え字も 出力します. すなわち, `v(k(:))` はベクトル `s`となります.

`s=sort(v,'r')` は`v`の 行を降順にソートします. すなわち, `s`の各列は `v`の各列でこれを降順に並び替えることにより 得られます. `[s,k]=sort(v,'r')`は, 各列`i`について `v(k(:,i),i)=s(:,i)`となる添え字 `k`も返します.

`s=sort(v,'c')` は`v`の 列を降順にソートします. すなわち, `s`の各行は `v`の各行でこれを降順に並び替えることにより 得られます. `[s,k]=sort(v,'c')`は, 各行`i`について `v(i,k(i,:))=s(i,:)`となる添え字 `k`も返します.

複素数の行列またはベクトルはその大きさでソートされます. 列/行 ソートは複素数行列では実装されていません.

`y=sort(A)` は, `A` は 疎行列の場合でも使用可能です. 列/行ソートは疎行列では実装されていません.

注意 : `sort` is は古い関数とされており, gsortで置き換えられています.

## 例

    [s,p]=sort(rand(1,10));
    //p  is a random permutation of 1:10
    A=[1,2,5;3,4,2];
    [Asorted,q]=sort(A);A(q(:))-Asorted(:)
    v=1:10;
    sort(v)
    sort(v')
    sort(v,'r')  //Does nothing for row vectors
    sort(v,'c')

## 参照

- find
- gsort