summaryrefslogtreecommitdiffstats
path: root/stdlib/array.ml
diff options
context:
space:
mode:
authorDamien Doligez <damien.doligez-inria.fr>2002-06-05 12:12:47 +0000
committerDamien Doligez <damien.doligez-inria.fr>2002-06-05 12:12:47 +0000
commitbba52e7a9dfc5d8818b8a1e81cf5fd385ec4af79 (patch)
tree2165e2668adfad950c12db3e9004750e29cb334e /stdlib/array.ml
parentdb0a0a0d3427a3e9451ad7e6521c9221d64eb1be (diff)
changement List.sort; ajout fast_sort et List.merge
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@4884 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
Diffstat (limited to 'stdlib/array.ml')
-rw-r--r--stdlib/array.ml3
1 files changed, 3 insertions, 0 deletions
diff --git a/stdlib/array.ml b/stdlib/array.ml
index d77cf624d..175a3516f 100644
--- a/stdlib/array.ml
+++ b/stdlib/array.ml
@@ -144,6 +144,7 @@ let to_list a =
if i < 0 then res else tolist (i - 1) (unsafe_get a i :: res) in
tolist (length a - 1) []
+(* Cannot use List.length here because the List module depends on Array. *)
let rec list_length accu = function
| [] -> accu
| h::t -> list_length (succ accu) t
@@ -274,3 +275,5 @@ let stable_sort cmp a =
merge l2 l1 t 0 l2 a 0;
end;
;;
+
+let fast_sort = stable_sort;;