プロが教える店舗&オフィスのセキュリティ対策術

Fortranなのですが、実数のソートプログラムを作る必要があります。
x(1),...x(20)ぐらいの配列に実数が入っていて小さい順番に並べるというものです。ソートプログラムは何種類かあると思います。数千回ぐらいやるので速いほうがいいです。

ソートプログラムのソースなどを公開しているサイトがないでしょうか。検索しても発見できませんでした。やっぱりサブルーチン集を買うなどするのがよいでしょうか。自分で作ってもよいですが、ネット上に公開されているようなものを収集して作ってみたいと思っています。
よろしくお願いします。

A 回答 (5件)

参考までに、


データ数が20程度でしたら、クイックソートやヒープソートを使うよりも、挿入ソートや単純選択ソートのほうが速くソートできます。
    • good
    • 0

コンパイラによっては、コンパイラオリジナルの関数で


ソートできそうですよ。
自分の環境のCompaqかIntelのFortranでは、可能でした。
    • good
    • 0

個人的にはソートアルゴリズムの説明は


http://www.nicovideo.jp/watch/nm5251176
の動画のほうが好きだなあ
    • good
    • 0

Fortranはちょっと専門外ですが...



http://ja.wikipedia.org/wiki/ソート
いくつかのアルゴリズムが紹介されています。
Fortranではないですが、サンプルプログラムがついているものもあります。

Fortran以外の言語は御存じありませんか?
CとかJavaで書かれたプログラム例は、検索でたくさんヒットします。
それらをFortranに移植するのはそんなに難しくないと思うのですが
(再帰呼び出しを使うものを除いて)

あと、最近のだと qsort が使えるみたいです。
下手にプログラム作るより安全で早いと思います。
http://www.hiroshima-cu.ac.jp/japanese/IPC/hunet …
    • good
    • 0

「検索しても発見できませんでした」というのは、かなり検索能力に問題があります。


例えば「fortran 整列」で検索したら10秒でソースプログラムまでたどり着いたよ。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!