SMLには標準ソート機能がありますか?インターネット上のドキュメントは、私が何も見つけることができませんでした非常に希少です。SMLの標準ソート機能?
答えて
リストのソートはどうですか?あなたは、常にどちらか
- fun sort(L) =
= if L=[] then []
= else if tl(L)=[] then L
= else merge(sort(take(L)),sort(skip(L)));
val sort = fn : int list -> int list
はレイチェルは一部のみの権利であるhere
マージ、テイク、スキップ?申し訳ありませんが、そこには実際にzilchのドキュメントがあります。 –
SMLに標準のソート関数がないと思います。 –
ところで、独自の –
は、標準的なクイックソート
fun qsort(func) =
let
fun
sort([]) = [] |
sort(lhd :: ltl) = sort(List.filter(fn (x) => func(x, lhd))(ltl)) @ [lhd] @ sort(List.filter(fn (x) => not(func(x, lhd)))(ltl))
in sort
end;
はいくつかのコンパレータ(同じタイプの2 elemnetsを取り、ブール値を返す関数)に投げると、あなたはもうドンを問うてしまった場合、それはあなた のソート機能を返しますです尋ねることを躊躇する:)
を作成する必要はありません。このソーターは、x = yのfunc(x、y)= falseの場合にのみ順序を保持します。 –
- 1. SML機能が
あなたは何を並べ替えようとしていますか? –
@RachelGallenリスト。 –
私はあなたの傷跡が何であるかわかりませんが、[SML Basis Library](http://www.standardml.org/Basis/)のホームページは、機能を探すのに適しています –